![]() COMPUTER IMPLEMENTED METHOD FOR REMOTE SESSION NAVIGATION AND REMOTE SESSION NAVIGATION SYSTEM
专利摘要:
computer implemented method for remote session browsing, system for remote session browsing and its use a remote browsing process is directed towards generating and managing a persistent remote browsing context in a network computing provider. a client computing device requests a persistent browsing context instance from a network computing provider. the network computing provider provides processing results corresponding to processed representations of content requested to the client computing device. the persistent browsing context can be maintained at the network computing provider subsequent to the user terminating their interaction with the browser application on the client device. a client computing device can later request access to the persistent browsing context held on the computing device and network storage. 公开号:BR112014006589B1 申请号:R112014006589-6 申请日:2012-08-23 公开日:2021-07-20 发明作者:Jonathan A. Jenkins;Brett R. Taylor 申请人:Amazon Technologies, Inc.; IPC主号:
专利说明:
BACKGROUND [0001] In general terms, computing devices and communication networks can be used to exchange information. In a common application, a computing device can request content from another computing device through the communication network. For example, a user on a personal computing device can use a software browser application, typically referred to as a browser, to request a web page from a server computing device over the Internet. In such embodiments, the user computing device can be referred to as a client computing device, and the server computing device can be referred to as a content provider. Generally, the user can request, obtain, and interact with a number of requested web pages or other content simultaneously or in sequence through the software browser application. [0002] With reference to an illustrative example, as part of a navigation term on a client computing device, a user may request one or more web pages or other content from a content provider over the Internet or from a local source. In a specific modality, each web page or piece of content can be visually represented as displayed in one or more windows or tabs within the software browser application. Illustratively, the user can interact with one or more web pages or other content. For example, the user can input data into a shape on a web page, or change an attribute of a web page or piece of content. The user may additionally open or close tabs or windows in the software browser application, follow links or otherwise request additional web pages or content, or any number of other activities that may modify the internal state or presentation of the browser, one or more web pages, or other content during the browsing term. The displayed content, content state, and browser state at a time during a browsing session can be referred to as a browsing context. [0003] Generally, exiting a software browser application can terminate a navigation term and therefore can cause the navigation context associated with the navigation term to be lost. For example, closing a browser with multiple open tabs corresponding to web pages, and subsequently reopening a new instance of a software browser application can cause the new instance to load a default web page, or send new requests for the pages corresponding to the open tabs of the original browser. Consequently, any user interactions or changes made to the state of web pages displayed in the original browser will not be displayed in the new browser instance. Still further, a user opening a software browser application on a different client's computing device may be unable to continue a term of browsing initiated on the first client's computing device. BRIEF DESCRIPTION OF THE DRAWINGS [0004] The foregoing aspects and many of the inherent advantages of this invention will become more readily considered as they become better understood by reference to the following detailed description, when considered in conjunction with the accompanying drawings, in which: [0005] Figure 1 is an illustrative block diagram of a content delivery environment including a number of client computing devices, a content provider, a content delivery network service provider, and a content computing provider. network; [0006] Figure 2 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of a new browsing session request from a client computing device to a network computing provider; [0007] Figure 3 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of a request for a network resource from a network computing provider to a content provider; [0008] Figure 4 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of one or more requests corresponding to one or more embedded resources from a network computing provider to a provider content and content delivery network; [0009] Figure 5 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of browsing session data and user interaction data between a network computing provider and the computing device. client; [0010] Figure 6 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of an additional new browsing session request from a client computing device to a computing provider. network; [0011] Figure 7 is a user interface diagram illustrating an illustrative browser interface and browsing session content display; [0012] Figure 8 is a diagram illustrating browser content processing actions, illustrative as a series of processing subsystems; [0013] Figure 9 is an illustrative flow diagram of a new browsing session routine implemented by the network computing provider; [0014] Figure 10 is an illustrative flow diagram of a new client browsing session interaction routine implemented by a client computing device; and [0015] Figure 11 is an illustrative flow diagram of a process user interaction routine implemented by a client computing device; [0016] Figure 12 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of a new persistent browsing context request from a client computing device to a computing provider. network; [0017] Figure 13 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of a request to access an existing persistent browsing context from a client computing device to a provider. network computing; [0018] Figure 14 is a block diagram of the content delivery environment of Figure 1 illustrating the generation and processing of a new additional persistent browsing context request from a client computing device to a computing provider network; [0019] Figure 15 is a user interface diagram illustrating an illustrative navigation context selection interface; [0020] Figure 16 is an illustrative flow diagram of a persistent client browsing routine implemented by a client computing device; and [0021] Figure 17 is an illustrative flow diagram of a remote persistent navigation routine implemented by a network computing provider. DETAILED DESCRIPTION [0022] Described in general terms, the present disclosure relates to the generation and management of a remote application session between client computing devices and content providers in conjunction with a network computing provider. Specifically, aspects of disclosure will be described with respect to requesting a new persistent browsing context by a client computing device with a content provider. Additionally, aspects of disclosure will be described with respect to establishing a remote persistent browsing context in a network computing provider. Still further, aspects of the disclosure will be described with respect to the transmission of client and browser state data and client interaction data between the client computing device and the network computing provider. Although aspects of the modalities described in the disclosure focus, for the purposes of illustration, on managing a persistent browsing context related to a software browsing application, those skilled in the art will find that the techniques disclosed here can be applied to any number of software processes or applications. Additionally, the present disclosure is not intended to require the combination of any of the aspects described. Additionally, although various aspects of the disclosure are described with respect to illustrative examples and embodiments, those skilled in the art will consider that the disclosed embodiments and examples are not to be considered as limiting. [0023] With reference to an illustrative example, a user may cause a client computing device to load a software browser application (hereinafter referred to as a "browser") to access content provided by one or more providers. contents. Illustratively, the content accessed may include a compilation of one or more network resources (for example, a web page) and embedded resources such as images, video, audio, text, executable code and other resources. In one embodiment, the browser may have a content display area or panel to display accessed network content in addition to one or more local interface components, such as toolbars, menus, buttons, or other user interface controls. Local interface components can be managed and controlled by the software browser application or any other process running or deployed locally on the client computing device. Illustratively, managing UI controls locally can allow a responsive UI, such as user-friendly interactions, to be processed locally on the client computing device. [0024] Subsequent to the browser being loaded, in one embodiment, the client computing device may exchange persistent browsing context environment information with the network computing provider by setting or identifying one or more browsing context preferences, persistent or other basic information (eg bookmarks, browsing history, etc.) to be associated with the persistent browsing context. In a further embodiment, the persistent browsing context environment information may include information identifying one or more persistent browsing contexts at the network computing provider that may be accessible to the client computing device. Subsequent to, prior to, or concurrent with the exchange of persistent browsing context environment information, the client computing device may provide a new persistent browsing context request to the network computing provider. The address or location of a network computing provider capable of serving the persistent browsing context request can be hardcoded in the browser, it can be user-configurable, it can be obtained from a network address service, or it can be determined in any other way. [0025] In an illustrative embodiment, in response to the persistent browsing context request received from the client computing device, the network computing provider may instantiate or cause to be instantiated one or more computing components associated with the network computing provider that will host a navigation software application. For example, the network computing provider may instantiate, or cause to be instantiated, an instance of a virtual machine comprising a software browser application capable of maintaining a persistent browsing context. In another example, the network computing provider may instantiate or tag or store data to store data corresponding to various content, content states, and browser states comprising a persistent browsing context. [0026] Illustratively, the client computing device may provide one or more content requests to the network computing provider including information identifying one or more sources for the requested content. Identifiers can be in the form of network addresses of network resources, such as a website or other piece of content accessible over the network. For example, the user can select or enter a URL, (eg http://www.xyzwebsite.com) in a browser window, causing the client computing device to transmit a request for new content to the provider of network computing, including the selected URL. [0027] In response to one or more requests for content, the network computing provider may create new remote browsing sessions for one or more of the new requests for content. The network computing provider may request the identified network resource(s) from one or more content providers, a content delivery network, or a local or associated cache component. For example, the browser software application in the instantiated network computing component may process a core network resource and then generate additional content requests for content identified in one or more embedded resource identifiers (eg, images, files. video, etc.). Illustratively, in the case of other non-browser applications, network resources, or content may include any file type or format known in the art and supported by the specific software application. [0028] Having obtained the initially requested content (for example, the requested network resource and built-in features), the network computer provider can identify a remote session browsing configuration by specifying a remote session communication protocol for use in the transmission of requested content, user interaction data, intermediate processing results, and other information between the browser running on the client computing device and the browser running on the network computing component instantiated on the storage and compute provider. The information exchanged between the browser on the instantiated network computing component and the browser on the client computing device may generally be referred to as "browser session information". [0029] In addition to specifying a remote session communication protocol for transmitting information between the client computing device and the instantiated network computing component, in one embodiment, the identified remote session browsing configuration may specify that one or more processing actions to be performed on the requested content must be performed at the network computing provider rather than, or in addition to, the client computing device. According to the selected remote session browsing configuration, the client computing device and the instantiated network computing component can exchange browser session information such as processing results (e.g., state data or display data representing the requested content), user interaction information, and subsequent content requests. The client computing device can display processing results and other browser session information to the user and accept various inputs and interactions from the user to provide the network computing provider. Consequently, in some embodiments, the user can experience requested content similarly as if the user were processing the requested content locally on the client computing device. [0030] Subsequent to establishing the persistent browsing context and requesting content, the user may choose to terminate that browsing term on the client computing device. For example, the user can close or exit the browser on the client computing device, turn off the client computing device, or simply turn their attention away from content displayed in the browser on the client computing device. Illustratively, the persistent browsing context can be maintained at the network computing provider independently of the user ending their interaction with the browsing application on the client device. For example, the network computing provider may maintain one or more components of a software browsing application associated with the persistent browsing context running on the network computing provider, may store information associated with the persistent browsing context state, or any combination thereof. [0031] Illustratively, the user may choose to interact with the persistent browsing context additionally at some later time. For example, the user can open a new instance of a software navigation application on the client computing device, or can open a new instance of a software navigation application on a second client computing device and request context access. persistent browsing. Consequently, the client computing device may request access to the persistent browsing context held on the network computing and storage device. The network computing and storage device may provide browser session information associated with the persistent browsing context (e.g., processing results associated with content and state) to the client computing device for display in the browser. The browser on the client computing device can process the browsing session information to display representations of the content on the client computing device. Illustratively, from the user's perspective, the state and appearance of the content displayed on the client computing device can thus appear to duplicate or appear similar to the state and appearance of the content before the user completes their previous browsing term. [0032] Figure 1 is an illustrative block diagram of a networking computing environment 100 for managing and processing content requests. As illustrated in Figure 1, the networking computing environment 100 includes a number of client computing devices 102 (generally referred to as clients) for requesting content and content processing from a content provider 104, service provider CDN 106 or network computing provider 107. In an illustrative embodiment, the client computing devices 102 may correspond to a wide variety of computing devices including personal computing devices, laptop computing devices, handheld computing devices, devices terminal computing devices, mobile devices (eg, mobile phones, tablet computing devices, etc.), wireless devices, various electronic devices and appliances, and the like. In subsequent figures, client computing devices 102 may be individually labeled for the purpose of illustration as client computing device 102A and client computing device 102B. It should be understood that each client computing device 102A and 102B may be identical or different from each other or any other client computing device 102. Additionally, although two client computing devices 102 are illustrated here for purposes of illustration, it is to be understood that any number of client computing devices 102 may be used in association with the subject matter as disclosed. In the illustrative embodiment, client computing devices 102 include necessary hardware and software components to establish communications over a communication network 108, such as a remote area network or a local area network. For example, client computing devices 102 may be equipped with networking equipment and navigation software applications that facilitate communications over the Internet or an intranet. Client computing devices 102 may have varied local computing resources such as central processing units and architectures, memory, mass storage media, graphics processing units, communication network availability and bandwidth, etc. [0033] The networking computing environment 100 may also include a content provider 104 in communication with one or more client computing devices 102 or other service providers (e.g., service provider CDN 106, computer provider of network 107, etc.) via communication network 108. Content provider 104 illustrated in Figure 1 corresponds to a local association of one or more computing devices associated with a content provider. Specifically, content provider 104 may include a network server component 110 corresponding to one or more server computing devices to obtain and process requests for content (such as web pages) from client computing devices 102 or other service providers. Content provider 104 may further include an origin server component 112 and associated storage component 114 corresponding to one or more computing devices for obtaining and processing requests for network resources from the CDN service provider. Content provider 104 may further include an application server computing device 111, such as a streaming data server, to process requests for streaming content. Those skilled in the pertinent art will appreciate that content provider 104 can be associated with various additional computing sources, such as additional computing devices for managing content and resources, DNS name servers, and the like. For example, although not illustrated in Figure 1, content provider 104 may be associated with one or more DNS name server components that would be authorized to resolve client computing device DNS queries corresponding to a domain of the content provider. . [0034] Continuing with reference to Figure 1, the networking computing environment 100 may include a CDN service provider 106 in communication with one or more client computing devices 102 and other service providers via the communication network. 108. The CDN service provider 106 illustrated in Figure 1 corresponds to a local association of one or more computing devices associated with a CDN service provider. Specifically, the CDN service provider 106 may include a number of Point of Presence ("POP") locations 116, 122, 128 that correspond to nodes in the communication network 108. Each CDN POP 116, 122, 128 includes a DNS component 118, 124, 130 composed of a number of DNS server computing devices to resolve DNS queries from client computers 102. Each POP CDN 116, 122, 128 also includes a composite resource cache component 120, 126, 132 from a number of cache server computing devices to store resources from content providers and stream multiple requested resources to multiple client computers. DNS components 118, 124 and 130 and resource cache components 120, 126, 132 may further include additional software and/or hardware components that facilitate communications including, but not limited to, load-sharing or load-sharing software/hardware components. load balance. [0035] In an illustrative embodiment, the DNS components 118, 124, 130 and the resource cache component 120, 126, 132 are considered to be logically grouped, regardless of whether the components, or portions of the components, are physically separated. Additionally, although the CDN POPs 116, 122, 128 are illustrated in Figure 1 as logically associated with the service provider CDN 106, the CDN POPs will be geographically distributed throughout the communication network 108 in a manner to better serve the diverse demographics of client computing devices 102. Additionally, those skilled in the pertinent art will appreciate that the CDN service provider 106 may be associated with various additional computing resources, such as additional computing devices for managing content and resources, and the like. [0036] Continuing with further reference to Figure 1, the networking computing environment 100 may also include a network computing provider 107 in communication with one or more client computing devices 102, the CDN service provider 106, and content provider 104 via communication network 108. Computing provider network 107 illustrated in Figure 1 also corresponds to a logical association of one or more computing devices associated with a computing provider network. Specifically, the network computing provider 107 may include a number of Point of Presence ("POP") locations 134, 142, 148 that correspond to nodes in the communication network 108. Each POP 134, 142, 148 includes a component of network computation (NCC) 136, 144, 150 to host applications, such as streaming data applications, via a number of instances of a virtual machine, commonly referred to as an instance of an NCC. Those skilled in the pertinent art will consider that NCC 136, 144, 150 would include physical computing device resources and software to provide multiple instances of a virtual machine or to dynamically cause the creation of instances of a virtual machine. Such creation can be based on a specific request, such as from a client computing device, or the NCC can initiate dynamic creation of an instance of a virtual machine independently. Each NCC POP 134, 142, 148 also includes a storage component 140, 146, 152 comprised of a number of storage devices for storing any type of data used in the delivery and processing of computing or network resources, including but not limited to to user data, status information, processing requirements, historical usage data, and resources from content providers that will be processed by an instance of an NCC 136, 144, 150 and transmitted to multiple client computers, etc. In some embodiments, network computing provider 107 can be thought of as a network computing and storage provider. NCCs 136, 144, 150 and storage components 140, 146, 152 may further include additional software and/or hardware components that facilitate communications including, but not limited to, load-sharing or balancing software/hardware components of load to select instances of a virtual machine supporting a requested application and/or providing information to a DNS name server to facilitate the forwarding of the request. [0037] In an illustrative embodiment, the NCC 136, 144, 150 and the storage components 140, 146, 152 are considered to be logically grouped, regardless of whether the components or portions of the components are physically separated. For example, a compute network provider 107 might keep the POPs separate to provide the NCC and storage components. Additionally, although the NCC POPs 134, 142, 148 are illustrated in Figure 1 as logically associated with a network computing provider 107, the NCC POPs will be geographically distributed throughout the communication network 108 in a way to better serve the demographics. diverse of client computing devices 102. Additionally, those skilled in the pertinent art will appreciate that the network computing provider 107 can be associated with various additional computing resources, such as additional computing devices for managing content and resources, and the like . Still further, those skilled in the pertinent art will consider that the components of the network computing provider 107 and components of the CDN service provider 106 may be managed by the same entities or by different entities. [0038] Referring now to Figures 2-6, the interaction between the various components of the networking computing environment 100 of Figure 1 will be illustrated. Specifically, Figures 2-6 illustrate the interaction between the various components of the network computing environment 100 for exchanging content between a client computing device 102 and a content provider 104 via the network computing provider 107. For the purposes of example, however, the illustration has been simplified in such a way that many of the components used to facilitate communications are not shown. Those skilled in the pertinent art will consider that such components can be utilized and that further interactions would therefore occur without departing from the essence and scope of the present disclosure. [0039] Referring to Figure 2, the process may begin with generating and processing a browsing session request from a client computing device 102 to a network computing provider 107. Illustratively, the computing device Client 102 can load a browser to view network content in response to a user or event request. Subsequent to the browser being loaded, the browser can be deployed to request a new browsing session. From the perspective of the client computing device user, the request for the new browsing session corresponds to the request intended to transmit the request to one or more corresponding content providers 104. Illustratively, this aspect can be automatically generated as a result of loading from the browser (for example, a request for a “home” or default page), or can be generated as a result of a user following a link or entering a network address into an address bar. As illustrated in Figure 2, the browsing session request is first transmitted to a network computing provider 107. In an illustrative embodiment, the network computing provider 107 uses a registration application program interface ("API") to accept browsing session requests from the client computing device 102. The browsing session request may include network address information corresponding to a requested network resource, which may be in any form, including but not limited to an Internet Protocol (“IP”) address, a URL, a Media Access Control (“MAC”) address, etc. [0040] Subsequent to receiving the browsing session request, the network computing provider 107 may select an associated network computing component (hereinafter "NCC") point of presence (hereinafter "POP") such as NCC POP 142 to serve the browsing session request. Selecting NCC POP can determine the network and processing resources available for the instantiated virtual machine. Selection of network and processing resources and provisioning of software in the NCC POP instance can be performed, at least in part, to optimize communication with content providers 104 and client computing devices 102. [0041] Referring to Figure 3, an illustrative interaction for generating and processing a request for a network resource from a network computing provider 107 to a content provider 104 will be described. As illustrated in Figure 3, the selected NCC POP 142 can generate a browsing session corresponding to one or more content providers based on a browsing session request, such as the illustrative browsing session request illustrated in Figure 2 above. Illustratively, instantiating a new browsing session instance may include loading a new virtual machine instance and/or browser instance into NCC POP 142, reserving or allocating device memory, storage or cache space, processor time, width bandwidth or other network or computing resources for new browsing session. [0042] Subsequent to the initialization of a new browsing session instance, the NCC POP 142 may provide a request for a new resource to a content provider 104 based on a network address included in the browsing session request. For example, a browsing session request might include a URL to a web page, such as "http://www.xyzsite.com/default.htm." NCC POP 142 can resolve the URL to an IP address through a DNS resolver associated with the network computing provider (not shown), and can request the web page from the content provider 104 at the resolved IP address. In various embodiments, a network resource can be retrieved from any combination of content providers, content delivery network servers (hereinafter “CDN”), or caches associated with network computing provider 107. For example , the network computing provider may check whether a resource is stored in a local cache or at another server or service provider associated with the network computing provider 107. If a network resource is stored in an associated or local location, NCC POP 142 can retrieve network resource from associated location or location rather than from third-party content provider 104 or CDN service provider 106. Illustratively, NCC POP 142 can provide requests for any number of network resources as included in the browsing session request, and can obtain these network resources from any number of different sources, sequentially or in parallel. [0043] As illustrated in Figure 3, the content provider 104 retrieves the resource request from the NCC POP 142 and processes the request accordingly. In one embodiment, content provider 104 processes the resource request as if it were originally provided by client computing device 102. For example, content provider 104 can select content type, content ordering, or content version in accordance with the requirements of the requesting client computing device 102. In another embodiment, the content provider 104 may be provided with information that provides information associated with the NCC POP 142 for use in providing the requested content (e.g., a quantity available processing resources or network bandwidth). [0044] Subsequent to obtaining the requested network resource from the content provider 104 (or other source designated by the content provider), the NCC POP 142 may process the network resource to extract embedded resource identifiers and compile information for determination of a remote session browsing configuration. For example, a network resource such as a web page may include embedded CSS and Javascript style information as well as embedded feature identifiers with additional resources such as text, images, video, audio, animation, executable code and other HTML files, CSS and Javascript. In the process of extracting the built-in resource identifiers, the NCC POP 142 can compile information about the processed network resources for later use in determining a remote session browsing configuration as discussed below with reference to Figure 4. [0045] Referring to Figure 4, an illustrative interaction for generating and processing one or more requests corresponding to one or more integrated resources from a network computing provider to a content provider and content delivery network is disclosed . As illustrated in Figure 4, the selected NCC POP 142 can provide feature requests to one or more content sources such as content provider 104 and CDN POP 116. Feature requests can match the built-in features based on one or more identifiers of built-in resources extracted from a requested network resource (eg a web page) as described in Figure 3 above. In various embodiments, embedded resources can be retrieved from any combination of content providers, CDN servers, or caches associated with the network computing provider 107. For example, the network computing provider can verify that an embedded resource is stored in a local cache or on another server or service provider associated with the network computing provider 107. If an embedded resource is stored in an associated location or location, the NCC POP 142 can retrieve the embedded resource from the associated location or location more properly than the third-party content provider or CDN. Illustratively, NCC POP 142 can provide requests for any number of built-in resources referenced by a network resource, and can get those built-in resources from any number of different sources, sequentially or in parallel. Subsequent to obtaining the requested resources, the NCC POP 142 may process the requested resources and content to determine a remote session browsing configuration for processing and communicating content to the client computing device 102. [0046] Referring to Figure 5, an illustrative interaction for generating and processing processing results and user interaction data between a network computing provider and a client computing device is disclosed. As described above in one embodiment, the respective browsers on the instantiated network computing component and client computing device 102 can exchange browser session information related to the allocation and processing of requested resources in the instantiated network computing component and computing devices. client computing. As illustrated in Figure 5, the selected NCC POP 142 can provide an initial processing result to the client computing device 102 over the network 108. The initial processing result may correspond to the requested network content, such as a web page , together with associated built-in resources processed by the NCC POP 142 according to a selected remote session browsing configuration as described in Figure 4 above. NCC POP 142 also makes a determination of what additional processes will be conducted on NCC POP 142, client computing device 102, or both. Subsequent to receiving an initial processing result and process allocation, the client computing device 102 may perform any remaining processing actions on the initial processing result as required by the selected remote session browsing configuration, and may display the content fully rendered in a browser's content display area. The client computing device 102 can process any local user interactions with local interface components or content elements locally, and can provide user interactions requiring remote processing for the network computing provider 107. The network computing provider 107 can provide updated processing results to the client computing device in response to changes in content or remote user interaction data from the client computing device. [0047] Referring to Figure 6, a block diagram of the content delivery environment of Figure 1 is disclosed illustrating the generation and processing of a new request for additional browsing session from a client computing device to a provider of network computing. As illustrated in Figure 6, a second request for a new browsing session may be sent to network computing provider 107 from client computing device 102 via network 108. In an illustrative embodiment, network computing provider 107 uses a registration API to accept browsing session requests from client computing device 102. [0048] Additional browsing session requests may be generated by a client computing device 102 in response to a user opening a new browser window with a new content display area, opening a new content display area in an existing browser window (for example, opening a new tab in a browser), requesting new network content in an existing content display area (for example, following a link to a new network resource, or entering a new address browser), or any other user interaction. For example, a user browsing a first web page corresponding to a first instance of a browsing session can follow a link that opens a new browser tab or window to view a second web page. In one modality, any steps required for obtaining and processing content associated with the second web page can be performed by the currently instantiated network computing component where the browser can handle the processing of the two resource requests. In another embodiment, the client computing device request 102 can be processed as a new browsing session request to the network computing provider 107, including the network address of the second web page. client computing device may not specifically request a separate browsing session, and a user interaction with the browser on client computing device 102 may appear to be part of the same browsing session. As described above with respect to Figures 2 and 3, the network computing provider 107 can cause an instantiation of a network computing component to obtain and process content associated with the second web page. browsing session may be generated by client computing device 102 corresponding to sessions of a network resource (eg frames of a web page), individual network resources, or the embedded resources themselves, data objects included in a content set, or individual network resources. [0049] Illustratively, the request for additional browsing session may include any number of pieces of data or information including, but not limited to, information associated with a user, information associated with client computing device 102 (e.g. hardware or software, a logical or physical device location, etc.), information associated with the network 108, user or browser preferences (e.g., a requested remote session browsing protocol, a preference list, a decision tree or other information), information associated with the network computing provider 107, information associated with one or more pieces of requested network content (e.g., the network address of a network resource), etc. Content requested may include any form of digital content, including web pages or other documents, text, images, video, audio, scripts or executable code, or any other type of digital resource. [0050] Subsequent to receiving the browsing session request, the network computing provider 107 may select an associated network computing component such as NCC POP 142 to serve the browsing session request. As discussed above with reference to Figure 2, a network computing provider 107 can select an NCC POP to serve a browsing session request based on any number of factors, including but not limited to available NCC POP resources (for example , available memory, processor load, network load, etc.), a financial cost of serving the NCC POP browsing session request, the respective NCC POP location to a client computing device 102, content provider 112 , or CDN POP 116, an NCC POP cache status (for example, if a requested resource is already stored in an NCC POP cache), and so on. In one embodiment, the network computing provider 107 may select a number of NCC POPs to serve a browsing session request. Illustratively, although network computing provider 107 is illustrated here for the purpose of illustration as selected NCC POP 142, network computing provider 107 may select any existing NCC POP to serve the browsing session request. For example, a single client computing device 102 may simultaneously or sequentially provide three different browsing session requests to the network computing provider 107 corresponding to different network resources. The network computing provider 107 can select different NCC POPs for each browsing session request, the same NCC POP for all three browsing session requests, or any combination thereof. As discussed above, the decision to select a different NCC POP that was used for a previous or simultaneous browsing session request can be made based on available system resources, randomly, or according to any other factor as discussed above. and with respect to Figure 2. [0051] Figure 7 is a user interface diagram illustrating an illustrative browser interface and browsing session content display. As described above with reference to Figure 5, a browser 700 may have a content display area 702 as well as one or more local interface components. These local interface components can include toolbars, menus, buttons, address bars, scroll bars, window resizing controls, or any other user interface controls. Illustratively, local interface components can be displayed as separate from the content display area or can be overlaid or embedded in the content display area. [0052] Interactions with local interface components can be treated as local user interactions or remote user interactions depending on the processing required by the interaction and remote session browsing configuration. For example, selecting a preference option in a browser menu can be handled completely like local user interaction by a browser. The processing required to display the menu, provide visual feedback regarding the selection, display the preferences window, and process changes made to browser preferences can be performed locally. As discussed above, processing user interactions locally can provide greater response property in the browser compared to sending user interaction data to NCC POP 142 for processing. As another example, when using a remote session browsing configuration that specifies extensive processing in NCC POP 142 (for example, a remote session browsing configuration using a remote session communication protocol such as RDP), selecting a content refresh button on a browser toolbar can be handled as a local user interaction and as a remote user interaction. The limited processing required to provide interface feedback corresponding to the button selection can be handled in the client computing device 102 to provide the interface response property appearance, while the refresh command, which may require processing the network content displayed in the browser's content display area, can be sent as user interaction data to the NCC POP 142 for processing. The NCC POP 142 can then transmit updated processing results corresponding to the refreshed network content back to the client computing device 102 for display. [0053] In one embodiment, a browser window 700 may correspond to a persistent remote browsing context. With respect to that particular modality, browser 700 may include a persistent browsing context name 706 or other visual signs identifying a current persistent browsing context. In one embodiment, the persistent browsing context may include multiple web pages or other web content organized as content tabs 708 in a 700 browser window. Content 708 can be held on network computing provider 107 after browser 700 is closed or disabled. Consequently, a new instance of a browser on the same client computing device 102 or on a different client computing device 102 can reload content and content tabs 708 from processing results provided by storage provider 107 upon accessing subsequently the existing persistent browsing context. [0054] Figure 8 is a diagram illustrating browser content processing actions, illustrative as a series of processing subsystems 800. In many embodiments, a browser can process sets of content (for example, network resources such as web pages web and associated integrated resources) in a series of processing actions. Illustratively, and as described above, with reference to Figures 3-5, a remote session browsing configuration can specify a division between processing actions performed at a network computing provider (eg, an NCC POP) and processing actions. processing performed on a client computing device 102. This division may designate some processing actions to be performed by each of the NCC POP and client computing device 102, or it may assign all processing actions to a single device or component . For example, an NCC POP can perform all these various processing actions on the browsing session instance, and send fully processed RDP processing results to client computing device 102 for bitmap assembly and display. Any number of different different remote session browsing configurations can be used by one or more instances of browsing sessions running in an NCC POP. [0055] Those of pertinent knowledge in the art will consider that the subsystems shown here are illustrated for the purpose of illustration, and are not intended to describe a necessary order or definitive list of browser subsystems. Various navigation software components can implement additional navigation subsystems or a smaller number of navigation subsystems than those shown here, and can order the corresponding subsystems or processing actions in any number of different ways. Although the processing subsystems 800 here illustrated for the purpose of illustration are directed towards processing web pages or other network content, those of pertinent knowledge in the art will consider that processing other file types or network resources can be broken down from a similar way. For example, those of skill in the pertinent art will consider that a similar scheme can be developed for processing images, video, audio, database information, three-dimensional drawing data, or any other format or type of data file known in the art. Similar scheme can also be developed for any number of device operating system or software structure processing operations, such as programming, file or memory management, system resource management, process or service execution or management, etc. Additionally, although the HTML protocol and RDP remote session communication protocols are discussed here for purposes of example, those of skill in the pertinent art will appreciate that a remote session browsing setup can implement any number of remote communication protocols for any number of specified processing actions, and that a remote session browsing configuration can be formulated to perform any fraction or combination of the actions identified below on any combination of client computing device 102 and network computing provider 107. [0056] Illustratively, the first processing subsystem involved in processing and displaying network content is the networking subsystem 802. Illustratively, the networking subsystem 802 may be responsible for all communication between the browser and the provider content, including local caching of network content. The networking subsystem is generally limited by the user's network performance. A remote session browsing configuration that splits the processing actions in the networking subsystem 802 could include a remote session browsing configuration using an HTML remote session communication protocol, where one or more resource recovery actions or caching were performed on the NCC POP, but content parsing and processing were performed on the client computing device. [0057] When network resources such as HTML documents are downloaded from the server they can be passed to an HTML 804 subsystem which parses the document, initiates further transfer in the networking subsystem, and creates a structural representation of the document. Modern browsers may also contain related subsystems which are used for XHTML, XML and SVG documents. A remote session browsing configuration that splits the processing actions in the HTML 804 subsystem could include a remote session browsing configuration using an HTML remote session communication protocol, where an initial HTML page is processed in NCC POP to extract identifiers features, but further analysis and processing of the content is performed on the client computing device. In another embodiment, a remote session browsing setup that splits the processing actions in the HTML 804 subsystem could perform initial processing to create the structural representation of the HTML document, and provide a processing output including the structural representation and associated built-in features for the client computing device for processing. [0058] When CSS is found, whether within an HTML document or an embedded CSS document, it can be passed to a CSS 806 subsystem to analyze the styling information and create a structural representation that can be consulted later. Illustratively, a remote session browsing setup that splits the processing actions into a CSS 806 subsystem can build a processing output including the CSS structural representation and the HTML structural representation, and provide the processing output and built-in features associated with the computing device for processing. [0059] HTML documents often contain metadata, for example, information described in a document header or attributes applied to an element. Compilation subsystem 808 may be responsible for storing and accessing this metadata. A remote session browsing setup that splits the processing actions into a compilation subsystem 808 can build a processing output including the processed metadata along with any other structural representations discussed above, and provide the processing output and built-in features associated with the client computing device for processing. [0060] When Javascript is found, it can be passed directly to a Javascript 810 subsystem responsible for script execution. The Javascript 810 subsystem has been thoroughly examined for years, and may be one of the most well-known navigation subsystems in the art. A remote session browsing configuration that splits processing actions into a Javascript 810 subsystem can build a processing output including an internal representation of one or more Javascript scripts including but not limited to state data or a script representation in a native or intermediate form, as well as any other processed structures or data discussed above, and provide the processing output and integrated resources associated with the client computing device for processing. [0061] As many Javascript engines are not directly integrated into the browser there may be a communication layer including the 812 ordering subsystem between the browser and the script engine. Passing information through this layer of communication can generally be referred to as ordering. A remote session browsing configuration that splits the processing actions into an ordering subsystem 812 can construct a processing result including ordering data as well as any other processed structures, scripts or data discussed above, and provide the processing output and resources associated with the client computing device for processing. [0062] In some embodiments, JavaScript interacts with an underlying network resource such as a network document through the Document Object Model APIs. These APIs can be provided through a native 814 object model subsystem that knows how to access and manipulate the document and is at the main interaction point between the scripting engine and the browser. Illustratively, a remote session browsing configuration that splits processing actions into a native object model subsystem 814 can build a processing output including native object model state data or API calls as well as any other processed structures, scripts , or data discussed above, and provide the processing output and any other integrated resources associated with the client computing device for processing. [0063] When the document is built, the browser may need to apply style information before it can be displayed to the user. The 816 formatting subsystem takes the HTML document and applies the styles. Illustratively, a remoa session navigation configuration that splits the processing actions into an 816 formatting subsystem can build a processing output including an HTML representation with applied styles, as well as any other processed state data, API calls, structures, scripts , or data discussed above, and provide the processing output and any other integrated resources associated with the client computing device for processing. [0064] In one embodiment, CSS is a block-based layout system. After the document is styled, the next step in an 818 block building subsystem might be to build rectangular blocks that will be displayed to the user. This process can determine things like block sizes and can be well integrated with the next stage, layout. A remote session navigation setup that splits processing actions into an 818 block construction subsystem can build a processing result including block information, as well as any other processed state data, API calls, structures, scripts, or data discussed above, and provide the processing output and any other built-in resources associated with the client computing device for processing. [0065] Subsequent to the browser styling the content and building the blocks, it can proceed through the process of laying out the content. The 820 layout subsystem is responsible for this algorithmically complex process. Illustratively, a remote session navigation setup that splits processing actions into a layout subsystem 820 can process the various state data, API calls, structures, scripts, or data discussed above to construct a processing result including layout information for the client computing device. Illustratively, an NCC POP can make use of various data or settings associated with the client computing device or browser (for example, as provided in the initial browsing session request) to generate a suitable layout for the client computing device. For example, a mobile device can provide a screen resolution and display mode for NCC POP. NCC POP can base layout calculations on this screen resolution and display mode to generate a rendering result corresponding to a suitable content representation for a browser running on the mobile device. Illustratively, in various embodiments, any other subsystem implemented by the NCC POP can make use of the data associated with the client computing device or browser in generating a processing result for the client. [0066] The final stage of the process can occur within display subsystem 822 where the final content is displayed to the user. This process is often referred to as extraction. A remote session browsing configuration that splits the processing actions in the networking subsystem 802 could include a remote session browsing configuration using a remote session communication protocol RDP, where almost all processing is performed in the NCC POP , and a processing result including bitmap data and low-level interface data is passed to the client computing device for display. [0067] Figure 9 is an illustrative flow diagram of a new browsing session routine 900 implemented by the network computing provider 107 of Figure 1. The new browsing session routine 900 begins at block 902. At block 904, the network computing provider 107 receives a new browsing session request from the client computing device 102. As previously described, the client computing device 102 can load a browser to view network content in response to an event or user request. Subsequent to the browser being loaded, the browser may implement a request for a new browsing session. From the perspective of the client computing device user, the request for a new browsing session corresponds to the request intended to transmit the request to one or more corresponding content providers 104. Illustratively, this request can be automatically generated as a result of the browser loading (for example, a request for a “home” or default page) or can be generated as a result of a user following a link or entering a network address into an address bar. Such a browsing session request may include one or more addresses or references to various network resources or other content requested by the client computing device 102. In an illustrative embodiment, the browsing session request is transmitted in accordance with an API. [0068] In block 906 the network computing provider 107 can select an associated NCC POP to instantiate a new browsing session based on the browsing session request. As discussed above with reference to Figure 1, a network computing provider 107 can include any number of NCC POPs distributed across any number of physical or logical locations. A network computing provider 107 can select an NCC POP to fulfill a browsing session request based on any number of factors including, but not limited to, available NCC POP resources (eg, available memory, processor load, computer load. network, etc.), a financial cost of serving the NCC POP browsing session request, the respective NCC POP location to a client computing device 102, content provider 104, or CDN POP 116, an NCC cache status POP (for example, if a requested resource is already stored in an NCC POP cache), etc. [0069] In one embodiment, the network computing provider 107 may select a number of NCC POPs to serve a browsing session request. For example, the network computing provider 107 can select two NCC POPs with different logical locations on the network. Each NCC POP may independently request and process network content on behalf of client computing device 102, and client computing device 102 may accept data from the first NCC POP to return a processing result. Subsequent to being selected by the network computing provider 107, the NCC POP 142 can obtain the browsing session request. In one embodiment, NCC POP 142 can have the browsing session request sent to it via a network computing provider component 107. In another embodiment, the NCC POP 142 or client computing device 102 can receive information from connection allowing the establishment of direct communication between the NCC POP 142 and the client computing device 102. Illustratively, the NCC POP 142 can be provided with the browsing session request originally provided to the network computing provider 107, can be provided with a subset of information (for example, just a network address of the requested content), or it may be provided with additional information not included in the original browsing session request. [0070] Subsequent to NCC POP 142 being selected, network computing provider 107 can cause NCC POP 142 to instantiate a new browsing session. Illustratively, instantiating a new browsing session instance may include loading a new virtual machine instance and/or browser instance into NCC POP 142, reserving or allocating device memory, cache or storage space, processor time, bandwidth network bandwidth, or other network or computing resources for new browsing session. Illustratively, one or more characteristics of the new browsing session instance and/or browser instance may be based on information from the client computing device 102 included in the browsing session request. For example, the browsing session request may include a device type or browser type, a device screen resolution, a browser display area, or other information defining the preferences or display capabilities of the client computing device 102 or browser. The NCC POP 142 can therefore instantiate a virtual machine instance and/or a browser instance with the same or similar capabilities as the client computing device 102. Illustratively, maintain a virtual machine and/or browser instance with the same or similar capabilities as the client computing device 102 may allow the NCC POP 142 to process network content according to the proper dimensions and layout for display on the specific client computing device 102. [0071] In some modalities, the NCC POP 142 can use an existing virtual machine instance and/or browser instance in addition to, or as an alternative, instantiating a new browsing session. For example, subsequent to NCC POP 142 being selected, network computing provider 107 can cause NCC POP 142 to associate an existing browsing instance and/or virtual machine instance, such as one or more instances previously instantiated in the NCC POP 142, with the new browsing session request. Illustratively, an existing browsing session and/or virtual machine instance may correspond to another browsing session, remote application session or other remote process associated with the client or user computing device 102, or it may be a software instance previously instantiated from an unrelated browsing session or remote process. In other embodiments, NCC POP 142 may instantiate a new browser or other application process on an existing virtual machine instance, or may combine the use of newly instantiated and previously instantiated software processes in any number of other ways. In still further embodiments, the network computing provider or NCC POP 142 may instantiate any number of new virtual machine instances and/or browser instances (or make use of existing instantiated instances) based on a single browsing session request . [0072] At block 908 the network computing provider 107 may provide a request for one or more network resources to a content provider or CDN service provider based on a network address included in the browsing session request. In various embodiments, one or more network resources may be retrieved additionally or alternatively from a local cache to NCC POP 142 or otherwise associated with network computing provider 107. Those skilled in the art will appreciate that in the case of in other embodiments, the network link or address may correspond to a document or file stored in a digital file compartment or other network storage location or in a cache component associated with the network computing provider 107 or computer computing device. client 102. In some embodiments, the new session request may include a document or file in addition to or as an alternative to a network address. At block 910, the network computing provider 107 obtains one or more network resources. Subsequent to obtaining the requested network resource, the NCC POP 142 can process the network resource to extract the embedded resource identifiers. [0073] In block 912, the network computing provider 107 may provide resource requests to one or more content sources such as content providers, CDN service providers, and caches. Resource requests can match built-in resources based on one or more built-in resource identifiers extracted from one or more network resources as described in block 910 above. At block 914, the network computing provider 107 can obtain these integrated resources from any number of different sources, sequentially or in parallel. [0074] At block 916, the network computing provider 107 may process the one or more network resources and associated embedded resources to determine a remote session navigation configuration for processing and communicating content to the client computing device 102 A remote session browsing configuration can include any proprietary or public remote protocol allowing the exchange of data and user interactions or requests between a remote server and a client. The remote session browsing configuration can illustratively include a remote session communication protocol and processing scheme for providing processed (or unprocessed) content to a client computing device for display in the content display area of a browser. [0075] Illustratively, a remote session browsing configuration may define or specify a remote session communication protocol including, but not limited to, a network protocol, signaling model, transport mechanism, or encapsulation format for the exchange of state data, user interactions, and other data and content between the network computing provider and the client computing device. Examples of remote session communication protocols known in the art include Remote Desktop Protocol (RDP), X-Windows protocol, Virtual Web Computing Protocol (VNC), Remote Frame Temporary Store protocol, HTML, etc. For example, RDP illustratively specifies a number of processing mechanisms for encoding client input (eg mouse movement, keyboard input, etc.) into protocol data units for provision to a remote computing device, and corresponding mechanisms to send bitmap updates and low-level interface information back to the client device. As another example, the HTML protocol illustratively provides a mechanism for providing files defining interface information and containing resource references from a server to a client, and a corresponding mechanism for a client computing device to provide requests for additional files and resources to the server. In one embodiment, the NCC POP 142 may provide an initial communication to the client computing device 102 after determining the remote session communication protocol. This initial communication can allow the client computing device 102 to prepare to receive communications on the selected remote session communication protocol and, in the case of extracting remote session communication protocols such as HTTP, can cause the remote session computing device to client sends an initial resource request to the browsing session instance running on NCC POP 142. [0076] Each remote session browsing configuration may further define a division of processing actions between the network computing and storage service (eg NCC POP 142) and the client computing device (eg computing device of client 102). In one embodiment, a specific division of processing actions can be based on the specific or determined remote session communication protocol. In another embodiment, a remote session communication protocol may allow for several different divisions of processing actions depending on the protocol implementation or configuration. For the purpose of illustration, many pieces of network content (eg, web pages, video, Flash documents) may require several processing actions before being displayed on a computing device. A web page, for example, can be analyzed to process various HTML layout information and references to associated resources or embedded content such as CSS and Javascript stylesheets, as well as embedded content objects such as images, video, audio, etc. . The HTML and each referenced object or piece of code will typically be parsed and processed before a corresponding representative object model for the web page can be built. That object model can then be further processed for layout and display in a content display area of a browser on client computing device 102. Illustrative browser processing actions are described in more detail below with reference to Figure 8. Those Those skilled in the art will appreciate that, in the case of other modalities or applications, various other processing actions may be required. [0077] A remote session browsing configuration can specify that various of the processing actions required for displaying a piece of network content are performed on the remote computing device, such as NCC POP 142, rather than on the computing device 102. Network content partially (or fully) processed at the network computing provider may be referred to as a processing result. As discussed below, the division of processing actions can be associated with or linked to the remote session communication protocol used for data exchange and client input between the NCC POP 142 and the client computing device 102. [0078] For example, a remote session communication protocol such as RDP that transmits a processing result including low-level interface information and bitmaps to the client computing device 142 for display may be associated with an acknowledgment of remote session browsing that specifies to perform all, or nearly all, required content processing actions in NCC POP 142. While using RDP, NCC POP 142 can, for example, run a full instance of a browser in NCC POP 142 and transmitting a processing result consisting of bitmap updates corresponding to a representation of the displayed content to the client computing device 102. The client computing device 102, in this example, may simply have to assemble the bitmap updates streamed for display in the browser's content display area, and can do no processing of the current HTML, Java crypt, or data objects involved in displaying an illustrative piece of network content. As another example, a remote session browsing setup using a remote session communication protocol such as HTML can stream network content in a largely raw form. The client computing device 102 can thus perform all the processing actions required for displaying the network content while the NCC POP 142 performs little or no processing. [0079] NCC POP 142 may base its determination of a remote session browsing configuration on any number of factors including, but not limited to, one or more characteristics of one or more of the requested features, content provider 104, or service provider CDN 106, one or more features of the content address or domain, one or more features of the client computing device 102, browser or application, user, one or more features of the NCC POP 142, or one or more features of the network or connection network, etc. Requested resource characteristics may include, but are not limited to, a data format, a content type, a size, processing requirements, resource latency requirements, a number or type of interactive elements, a security risk, a preference associated user name, a network address, a network domain, an associated content provider, etc. Characteristics of a content provider 104, service provider CDN 106, computing device 102, or NCC POP 142 may include, but are not limited to, processing power, memory, storage, network connectivity (e.g., available bandwidth or latency), a physical or logical location, anticipated stability or risk of failure, a software or hardware profile, available resources (eg, available memory or processing, or the number of software applications currently open), etc. NCC POP 142 may further consider perceived security threats or risks associated with a piece of content or domain, preferences of a client computing device or a content provider, costs of computing or network resources (eg, a financial cost of processing or bandwidth, resource utilization, etc.), predetermined preferences or selection information, any extra additional processing cost required by a specific remote session browsing configuration, a cache status (for example, if a specific resource is cached in an NCC POP 142, client computing device 102, or other network storage medium associated with the network computing provider), an expected delay or time required to retrieve the content network request, a preferred content provider, or agreements with a content provider for a specific remote session browsing configuration or level of service, a remote session browsing setting being used for another (or current) browsing session by the same user, or any other factor. [0080] In some embodiments, an NCC POP 142 may base a determination of a remote session browsing configuration on past behavior or practice. For example, an NCC POP 142 that has determined a remote browsing session setting for a specific resource in the past can automatically select the same remote browsing session setting when the resource is requested by the same (or potentially a different) user. As another example, a user who has a history of frequently accessing websites with extensible processing requirements may automatically be assigned a remote session browsing setting that performs most of the processing in NCC POP 142. In other embodiments, an NCC POP 142 can base a determination of a remote browsing session configuration on predictions of future behavior. For example, an NCC POP 142 may base its determination of a remote browsing session configuration for a specific resource on an analysis of past determinations made for a specific website, network domain, or set of related resources. A content provider that has historically provided heavy video web pages can be associated with a remote session browsing setting that emphasizes video performance on the client computing device 102. Illustratively, past historical analysis and future predictions can be considered as one or more of a number of factors to rely on for the remote session browsing configuration determination process, or may be final in the decision making process. For example, when an NCC POP 142 determines a remote session browsing configuration for a specific content provider, it can skip the process of determining remote session browsing configuration for any future resources served from the content provider. Illustratively, the NCC POP 142 can again determine a remote session browsing configuration to be associated with the content provider after a fixed period of time, or after the NCC POP 142 has identified or determined a change in the content being served by the provider. of content. [0081] In other embodiments, a network resource, website, network domain, content provider, or other network entity may specify or otherwise request the use of a specific remote browsing session configuration in an indicator of resources, metadata, or other communication with an NCC POP 142. The NCC POP 142 may treat the request as final, or it may consider the request as one of multiple factors to consider in the decision-making process. [0082] For example, a remote session browsing configuration using a remote session communication protocol such as RDP may specify that extensible processing takes place at network computing provider 107 (for example, at NCC POP 142) rather than than in the client computing device 102. The remote session browsing setup can thus leverage the processing power of the NCC POP 142 to achieve lower latencies and presentation delay when dealing with network content that requires a large amount of pre- processing (eg content with a large amount of CSS or Javascript information defining the page layout). The NCC POP 142 therefore can select a remote session browsing configuration that performs a substantial amount of processing at the network computing provider 107 and utilizes RDP or a similar remote session communication protocol for processing intensive content communication. Conversely, a remote session browsing configuration using a remote session communication protocol such as HTML may specify extensible processing at client computing device 102 more properly than at network computing provider 107. Remote session can thus get shorter delays and smoother presentation when presented with simple network content that requires very little processing or network content that requires quick change in the displayed content after its initial load. For example, a webpage with embedded video can do most of the processing better locally and using HTML rather than RDP as a remote session communication protocol. A remote session browsing setup specifying extensive processing at network computing provider 107 can process video at NCC POP 142 and quickly send screen updates (e.g., via RDP) to client computing device 102, potentially requiring a large amount of bandwidth and causing browser playback, while a remote session browsing setting specifying local processing can provide raw video information directly to the client computing device 102 for display (eg, via HTML), allowing the client caches and has smoother playback of content. [0083] As a further example, the NCC POP 142 in communication with a client computing device 102 with extremely limited processing power may choose to use a remote session browsing configuration that requires very little processing by the client computing device , for example, using RDP to transmit results processed by NCC POP 142. Conversely, an NCC POP 142 providing an extremely interactive web page may choose to use a remote session browsing configuration that allows the client computing device 102 to handle with user interactions locally to preserve the UI response property, for example using HTML to pass substantially raw data. As a still further example, an NCC POP 142 can base the determination of a remote session browsing configuration on preferences provided by the client computing device 102. A client computing device 102 can illustratively include preferences for a browsing configuration. remote session in an initial browsing session request, or at any other time. NCC POP 142 can use these preferences as an alternative or in addition to any other decision factor or metric. Illustratively, allowing the client computing device 102 to establish or influence the selection of a remote session browsing configuration allows the NCC POP 142 to assume user preferences when determining a remote session browsing configuration. For example, a user concerned about landing page load times might prefer to use a heavy remote session browsing setup in remote processing and use a remote session RDP communication protocol, while a user intending to maintain an extremely responsive interface might prefer using a remote session browsing configuration that performs most of the processing in the client computing device 102, for example, using a remote session communication protocol HTML. [0084] Illustratively, the NCC POP 142 can base a determination of a remote browsing configuration on any factor or combination of factors. For example, the NCC POP 142 can select a remote session browsing configuration based on a single factor, or it can assign weights to one or more factors when making a decision. In some modalities, the process of determining NCC POP 142 may change based on one or more of the factors described above. For example, an NCC POP 142 communicating with a client computing device 102 over a network with an excess of unused bandwidth can underweight factors such as network requirements for a remote browsing session, and can give greater weight to factors such as latency of page interactions, while an NCC POP 142 communicating with a client computing device 102 over a limited bandwidth network can give greater weight to factors dealing with efficiency of the remote session browsing protocol over a network. [0085] In one embodiment, the NCC POP 142 can select a single remote session browsing setting for a set of network content. For example, NCC POP 142 can select a single remote session browsing configuration for a requested network resource such as a web page. NCC POP 142 can thus render the web page together with all the embedded content based in the selected remote browsing session protocol, and using the remote browsing session protocol to exchange user interaction data and updated browsing session data for all embedded content associated with the web page. NCC POP 142 can select different remote session browsing settings for one or more resources in a network content set. For example, a network resource such as a web page may reference processing intensive CSS or Javascript resources, embedded as well as embedded video resources. The NCC POP 142 can select a first remote session browsing setting for a web page and all built-in features excluding the built-in video feature, and a second remote session browsing setting for the built-in video feature. Illustratively, this can result in NCC POP 142 using RDP to send a processing result to client computing device 102 for displaying the web page and associated embedded resources, while using HTTP to send the embedded video as a separate file, not processed. In one embodiment, the client computing device 102 can perform the minimum processing required to display the RDP processing result corresponding to the web page and embedded resources, and can also perform additional processing necessary to display the embedded video, for example, overlaying the video on top of the displayed RDP representation of the web page. Any number of remote session browsing settings can be selected to match any number of resources or objects included in a network content set, regardless of whether the resources or objects are obtained from a content provider 104 or CDN service provider 106 in one or more logical files or data structures. [0086] Although selection of a remote session browsing configuration is illustratively shown here as occurring after all network resources and associated embedded content have been obtained by the NCC POP 142, those skilled in the pertinent art will consider selecting a configuration Remote session browsing can be performed at any time. For example, NCC POP 142 can select a remote session browsing configuration after receiving a new browsing session request or related information from the client computing device, it may select a remote session browsing configuration after obtaining a new feature, but before getting any associated built-in features, or at any other time. In some embodiments, NCC POP 142 may switch to a new remote session browsing configuration at some point subsequent to client computing device 102 obtaining an initial processing result. Illustratively, NCC POP 142 selecting a new remote session browsing configuration may occur automatically after a certain period of time or event or in response to a change in network conditions, NCC POP 142 or client computing device 102 charging or computing resources, or any other factor described above as potentially influencing the choice of remote session browsing configuration. Illustratively, an NCC POP 142 dealing with other types or formats of information can select a remote session protocol based on any number of similar factors. For example, those skilled in the pertinent art will consider that a similar scheme can be developed for processing image, video, audio, database information, three-dimensional drawing data, or any other file format or data type known in the art. . [0087] The client computing device 102 may, in various embodiments, further instantiate a parallel browsing process sequentially or simultaneously with the request for a remote browsing session. In one embodiment, a client computing device 102 can instantiate a traditional local browsing session as known in the art (e.g. providing content requests from the browser and processing resources obtained locally) in addition to one or more remote browsing instances running on an NCC POP 142. In another embodiment, a client computing device 102 may be provided with network resources not processed by the NCC POP 142. content, CDNs, or cache components by the NCC POP 142. Resources may be provided to the client computing device 102 for processing locally in parallel with the remote browsing instance running on the NCC POP 142. In still further embodiments, the provider of network computing or NCC POP 142 can instantiate any number of new virtual machine instances and/or browser instances ( or make use of existing instances instantiated) to process resources and/or send processing results to the client computing device 102 in parallel. Illustratively, the local browsing session at client computing device 102 and the remote browsing session instance at NCC POP 142 can run in parallel. [0088] In one embodiment, a local browsing session running on client computing device 102 can obtain raw content (e.g., html web pages, embedded content, and other network resources) from NCC POP 142 at response to a browsing session request. Illustratively, content may have been retrieved by NCC POP 142 from a content provider, CDN, or cache in response to the browsing session request. The raw content provided by NCC POP 142 may include all content associated with the browsing session request or may supplement existing content in a client computing device cache, retrieved from a content provider or CDN, or retrieved from some other source. In one embodiment, a client computing device 102 may obtain all requested content from a local cache, and may not obtain any raw resources or content from the NCC POP 142. Subsequent to obtaining the raw content, the client computing device 102 can process the requested content in parallel with a remote browsing session running on NCC POP 142. For example, when the local browsing session running on client computing device 102 is processing the requested content, a session A remote browser running on NCC POP 142 may be processing the same content at substantially the same time. When the NCC POP 142 has performed a set of processing actions on the content to generate a processing result (for example, as specified by a given remote session browsing setting), the NCC POP 142 can provide the processing result to the device. of client computing 102. [0089] For the purpose of illustration, a client computing device 102 may require a longer load time to obtain and process the requested network resources than a browsing session instance running on NCC POP 142. For example, NCC POP 142 can retrieve and process content quickly due to its position on the network and the relative processing power of the local client computing device compared to NCC POP 142. Even if NCC POP 142 provides the client computing device 102 all requested network content, the client computing device 102 can still obtain a processing result from the NCC POP 142 before the local browsing session has completely completed processing the requested resources. The client computing device 102 may complete any further processing steps and display the obtained processing result before completing the local processing and displaying the content. Illustratively, this can allow the client computing device 102 to take advantage of a faster content load time of the NCC POP 142 relative to a traditional local browsing session. Before the local browsing session completes processing all requested resources, the browser can process any user interactions locally and/or remotely as described in Figures 5 and 11 below. [0090] When the local browsing session has been completely fetched, and the resources corresponding to the requested content have been processed, the computing device 102 can determine whether to continue to display the results obtained from the NCC POP 142 (and process the user interactions in NCC POP 142) using the determined remote session browsing setting or switching to processing user interactions locally. Switching to process user interactions locally can include replacing a displayed representation of requested resources based on a processing result obtained from NCC POP 142 with a local display of requested resources. For example, a browser can display a representation of a web page corresponding to a processing result from NCC POP 142 (eg RDP display information representing the rendered page) until the browser has completed processing and rendering from the web page locally. The browser can then replace the representation from NCC POP 142 with the locally rendered representation of the web page. Illustratively, replacing one representation with another representation can be transparent to the user. For example, the local and NCC POP 142 representations of the web page may be identical or substantially identical. In one embodiment, when the NCC POP 142 representation of the web page is displayed, the browser can send various user interactions with the displayed page to the NCC POP 142 for processing. When the locally rendered version of the web page is displayed, user interactions can be processed locally in the browser. Illustratively, the determination of which representation of the resources requested to be displayed (eg, local or from NCC POP 142) can be based on any of the same factors described with reference to the determination of a remote session browsing protocol mentioned above . [0091] In one embodiment, the client computing device 102 may switch to processing user interactions locally as soon as the local resources are fully loaded. Illustratively, the remote browsing session instance running on NCC POP 142 can be terminated after switching to local processing, or the remote browsing session instance can be kept as a backup copy in case of non-response or failure with respect to local browsing session. For example, the client computing device 102 can process user interactions locally as well as send remote user interaction data to NCC POP 142 in accordance with the selected remote session browsing configuration. Remote user interaction data can be sent by NCC POP 142 to keep the remote browsing session instance completely in parallel with the local browsing process being performed by the browser on the client computing device 102. As soon as the browsing session site continues to handle user interactions, the NCC POP 142 may refrain from sending the updated processing results, or it may send the updated processing results ignored by the client computing device 102. If a problem develops with the session local browsing at the client computing device 102, updated processing results may be provided to the client computing device 102 from the NCC POP 142 for processing and displaying in lieu of the local browsing session. Illustratively, this switching from the local browsing session to remote processing can be transparent to the user. In some embodiments, client computing device 102 may switch from a local browsing session to an instance of a remote browsing session based on factors other than local browser non-response or failure. For example, client computing device 102 or network computing and storage component 107 may select between a remote browsing session and a local browsing session based on any of the factors enumerated with respect to determining a browsing protocol. of remote session mentioned above. [0092] In another embodiment, the client computing device 102 may continue to process and display the updated processing results from the NCC POP 142 even after the local browsing session has fully loaded the requested content. The client computing device 102 may terminate the local browsing session or may run the local browsing session in parallel as a backup process in reverse to the example provided above. It should be noted that although the local browsing session is described here for illustration purposes as being slower to load than the remote browsing session instance, in some embodiments the local browsing session may load content faster than the remote browsing session, in which case the browser can process user interactions locally until the remote browsing process has fully loaded the requested content. In some embodiments, client computing device 102 can display and process user interactions through whatever browsing session, local or remote, by first loading the requested content. [0093] In various other embodiments, the network computing provider 107 can instantiate multiple remote browsing session instances to run in parallel in addition to or as an alternative to instantiating a local browsing session. Illustratively, these parallel browsing session instances may utilize any of the same or different remote session browsing protocols, and may act as backups in the manner described above with respect to a local browsing session, or may be used and alternately switched to maximize browser performance on client computing device 102. For example, in response to one or more browsing session requests, network computing provider 107 may instantiate a browsing session instance running in a first NCC POP and using an RDP protocol as well as a browsing session instance running on a second NCC POP using an X-Windows protocol. Client computing device 102 or network computing provider 107 can determine which instance of browsing session and protocol should be used based on resource utilization or performance considerations as described with respect to determining the session browsing protocol. remote mentioned above. [0094] Continuing with reference to Figure 9, at block 918, the network computing provider 107 can process the retrieved content, including the one or more requested network resources and embedded network resources, according to the browsing configuration of determined remote session to generate an initial processing result. At block 920, the network computing provider 107 may provide the initial processing result to the client for further processing and display in the browser's content display area. For the purposes of further example, an illustrative new client browsing session interaction routine 1000 implemented by client computing device 102 is described below with reference to Figure 10. At block 922, the browsing session startup routine terminates new 900. [0095] Figure 10 is an illustrative flow diagram of a new client browsing session interaction routine 1000 implemented by the client computing device 102. The new browsing session interaction routine 1000 begins at block 1002 in response to a user event or request causing the client computing device 102 to load a browser for viewing network content. At block 1004, the client computing device loads the browser's locally managed components, including all local interface components. As described above with reference to Figures 5 and 7, local interface components can include toolbars, menus, buttons, or other user interface controls managed and controlled by the software navigation application or any other process running or implemented locally on the client computing device. At block 1006, the client computing device 102 provides a request for a new instance of the browsing session to the network computing provider 107. From the perspective of the user of the client computing device, the request for the new browsing session corresponds to the intended request to transmit the request to one or more corresponding content providers 104. In another embodiment, the new session request may correspond to a request to upload a file or other document (for example, a request to upload an image to a photo editing app, etc.). Illustratively, the request can be automatically generated as a result of browser loading (for example, a request for a “home” or default page), or it can be generated as a result of a user following a link or entering a network address. in an address bar. As illustrated with reference to Figure 2, the browsing session request is first transmitted to a network computing provider 107. In an illustrative embodiment, the network computing provider 107 uses a registration API to accept requests from browsing session from the client computing device 102. [0096] A browsing session request may include any number of pieces of data or information including, but not limited to, information associated with a user, information associated with the client computing device 102, or software on the client computing device ( for example, hardware or software information, a logical or physical device location, etc.), information associated with the network 108, user or browser preferences (e.g., a requested remote session browsing protocol, a preference list , a decision tree or other information), information associated with the network computing provider 107, information associated with one or more pieces of requested network content (e.g., the network address of a network resource), etc. For example, a browsing session request from client computing device 102 may include information identifying a specific client computing device hardware specification or a level of hardware performance, bandwidth and latency data associated with recent content requests, a desired security level to process different types of content, a predetermined preference list of remote session browsing protocols, and one or more network addresses corresponding to the requested network resources, among others. In another example, the browsing session request may include information identifying a client computing device 102 screen resolution, aspect ratio, or browser display area in the browsing session request may allow the computing provider to network 107 customize the processing of network content for display on the client computing device. As previously described, the browsing session request may include network address information corresponding to a requested network resource, which may be in any form including, but not limited to, an Internet Protocol ("IP") address, an URL, a Media Access Control (“MAC”) address, etc. In one embodiment, the request for a new browsing session instance may correspond to the network computing provider receiving a request for a new browsing session instance at block 904 of Figure 9 above. [0097] At block 1008, the client computing device 102 obtains an initial processing result from the network computing provider 107. Illustratively, the format and data included in the initial processing result may vary based on the configuration of remote session browsing selected by network computing provider 107. In one embodiment, the initial processing result may include or be preceded by data informing client computing device 102 of the choice of remote session browsing configuration and/or establishing a connection through the remote session communication protocol corresponding to the selected remote session browsing configuration. As discussed above with reference to Figures 8 and 9, the initial processing result obtained may include requested content with one or more processing actions performed by the network computing provider 107. Subsequent to obtaining the initial processing result, the computing device client 102 may perform any remaining processing actions on the initial processing result at block 1010. [0098] At block 1012, the client computing device 102 displays the content corresponding to the processed initial processing result. For example, client computing device 102 may display the rendered client in the content display area 702 of a browser 700 as described in Figure 7 above. In one embodiment, the processing result may only include display data corresponding to content displayed by a browser, and may not include display data corresponding, for example, to interface controls of a browser instance in NCC POP 142, a desktop of a virtual machine instance corresponding to the browsing session, or any other NCC POP 142 user interface. For example, NCC POP 142 can render a web page and associated content for display via RDP in a browser instance running in a virtual machine instance on NCC POP 142. The browser instance can have one or more interface elements such as toolbars, menus, scroll bars, etc., in addition to the displayed web page. NCC POP 142 can send an RDP processing result corresponding only to the displayed web page, without any of the interface elements associated with the browser. Illustratively, including an RDP processing result corresponding only to the displayed web page may allow the browser on client computing instance 102 to display the web page by assembling the RDP processing result in the browser's content display area without any processing additional. In another embodiment, the RDP processing output may include a complete virtual machine desktop and browser window corresponding to the complete interface displayed in the NCC POP 142 browsing session instance. The client computing device may automatically identify the area of the RDP processing result corresponding to the requested content, and can display only that area in the browser's content display area. [0099] In block 1014, the client computing device 102 processes the user interactions, both local and remote. An illustrative routine for processing user instructions is provided below with reference to Figure 11. At block 1016 the routine ends. Illustratively, a browsing session instance instantiated by the network computing content provider 107 may terminate when a browser window or content display area is closed, may terminate when a remote session browsing protocol is replaced by a parallel process at client computing device 102, or may terminate in accordance with a timer or other event. Illustratively, if a browsing session has automatically ended due to a timeout, but has associated content still displayed in a browser on client computing device 102, further attempts by the user to interact with the content may result in a new request for browsing session being provided to the network computing and storage service provider 107 to start a new browsing session in accordance with the last state of the terminated session. Illustratively, ending a remote browsing session after a timeout can allow the network compute storage provider 107 to save computing resources on NCC POP. In one embodiment, this process may be transparent to the user at client computing device 102, although the remote browsing session was terminated during the intervening period. [0100] Figure 11 is an illustrative flow diagram of a process user interaction routine 1100 implemented by a client computing device 102. Process user interaction routine 1100 begins at block 1102 in response to an interaction through a user. Illustratively, process user interaction routine 1100 can begin subsequent to displaying content in a content display area of a browser interface. For example, process user interaction routine 1100 might correspond to block 1014 in Figure 10 above. [0101] Illustratively, the displayed content can have one or more interactive elements, such as shapes, buttons, animations, etc. User interaction with these interactive elements may require rendering and displaying updated content in the content display area. For example, selecting an element from a drop-down menu on a web page might require processing and might change the configuration or visual appearance of the web page or built-in features. Illustratively, the processing required by the user interaction with the displayed content can be handled as a local user interaction on the client computing device 102 or as a remote user interaction on the NCC POP 142 depending on the remote session browsing configuration in use . For example, if a remote session browsing setup uses substantial local processing (eg, sending raw files through HTML), user interactions with displayed content can typically be handled as local user interactions on the client computing device 102. Illustratively, handling user interactions with content displayed as local user interactions on the client computing device 102 can allow for better responsiveness and fewer delays with simpler user interactions (eg, selecting a button from radio, or typing text into a field), since the interaction data corresponding to the interaction does not need to be sent to the NCC POP 142 for processing. [0102] As an additional example, if a remote session browsing configuration using heavy remote content processing (eg sending processed bitmap data through RDP) has been used as the remote session browsing configuration , all user interactions with displayed content can be handled as remote user interactions. For example, user input (eg keyboard entries and cursor positions) can be encapsulated in RDP protocol data units and transmitted over network 108 to NCC POP 142 for processing. Illustratively, the NCC POP 142 can apply user interactions to network content and transmission processing results consisting of updated bitmaps and interface data corresponding to an updated representation of the content back to the client computing device 102. Illustratively, handling user interactions with content displayed as remote user interactions in NCC POP 142 can have a negative impact on interface responsiveness, as data has to pass through the network and is limited by network latency; however, user interactions that require a substantial amount of processing may perform better when handled as remote user interactions since the processing latency of the NCC POP 142 can be substantially lower than the processing latency of the client computing device 102 . [0103] In addition to a content display area for displaying network content, a browser can have one or more local interface components, such as toolbars, menus, buttons, or other user interface controls. Interactions with local interface components can be treated as local user interactions or remote user interactions depending on the processing required by the interaction and remote session browsing configuration as further illustrated in illustrative Figure 7 . For example, some local interface components can be managed locally by browser code running on the client computing device, while other local interface components can have one or more locally managed aspects (eg, button click feedbacks, nova scroll bar execution, etc.), and one or more remote managed aspects treated as remote user interactions (eg page refresh, requesting a page at an address in an address bar, etc.). [0104] At block 1104, the client computing device 102 obtains a user interaction from the user. This user interaction can be an interaction with local interface components as described in Figure 7 and above, or it can be an interaction with any interactive elements of the content displayed in the browser's content display area, such as form fields, buttons, animations, etc. User interaction with these local interface components or interactive display content elements may require local and/or remote processing depending on the nature of the component or element and the processing split specified by the remote session browsing configuration as described in Figure 7 and above . At block 1106, client computing device 102 determines the interaction processing requirements for the user interaction obtained. In decision block 1108, if the user interaction has local aspects (eg, button click feedback, a change to a local browser state, a content element being processed on the client computing device, etc.) a routine 1102 moves to block 1110 to process the local aspect or aspects of the user interaction at the client computing device 102 and subsequently update the local interface components in block 1112. Illustratively, and as discussed above, aspects of the components of interface updates and interaction and elements locally allow a browser to provide responsive user interfaces and content. Subsequent to processing local aspect(s) of the user interaction, or if the user interaction does not have local elements (for example, a user interaction with a content element displayed in the content display area when using a navigation setting remote session processing completely by the server side and using a remote session communication protocol RDP) routine 1102 moves to decision block 1114. If the user interaction has remote aspects that require processing, routine 1102 moves to block 1116 and provides remote user interaction data to network computing provider 107. Illustratively, in the case of a server-side remote session browsing configuration using a remote session communication protocol RDP, the interaction data of remote user can include input data such as a cursor position or keyboard input encapsulated in one or more data units. RDP protocol. In some embodiments of remote session navigation configurations using RDP or other remote session communication protocols, specific aspects of remote user interaction data such as cursor positions may be provided to the network computing provider 107 on an ongoing basis, whereas in other modalities of remote session browsing configurations the remote user interaction data may only be provided to the network computing provider 107 when associated with a user interaction that requires remote processing. [0105] At block 1118, the client computing device 102 obtains an updated processing result from the network computing provider 107, the network computing provider 107 having processed the remote user interaction data to generate a representation updated content. At block 1120, client computing device 102 performs any required processing on the updated processing result (based on the remote session browsing configuration) and at block 1122 displays the updated processing result in the browser's content display area. At block 1124 the user interaction routine of process 1102 ends. Illustratively, the routine can be rerun any number of times in response to additional user interactions with the browser and displayed content. [0106] Referring now to Figures 12-14, the interaction between the various components of the networking computing environment 100 of Figure 1 will be illustrated. Specifically, Figures 12-14 illustrate the interaction between the various components of the network computing environment 100 for creating and maintaining one or more persistent browsing contexts in the network content provider 107. For purposes of example, however, illustration has been simplified such that many of the components used to facilitate communications are not shown. Those skilled in the pertinent art will consider that such components can be utilized and that additional interactions would consequently occur without departing from the essence and scope of the present disclosure. [0107] Referring to Figure 2, the process can begin with generating and processing a new persistent browsing context request from a client computing device 102A to a network computing provider 107. Illustratively, the device Client computing 102A may load a browser for viewing network content in response to an event or user request. Subsequent to the browser being loaded, the browser can be configured to request a new persistent browsing context. In various embodiments, the request for a new persistent browsing context can become automatic from the browser load, or it can be the result of an event such as a command or request from the user of the client computing device. In other embodiments, the browser can be configured to request access to an existing persistent browsing context instantiated in the network computing provider as discussed in Figure 4 below. [0108] As illustrated in Figure 12, the client computing device 102A and a network computing provider 107 can exchange persistent browsing context environment information. Illustratively, persistent browsing context environment information can include any number of types of information, including, but not limited to, configuration information, identifying information, browsing preference information, information about persistent, currently active, browsing contexts , etc. In other embodiments, persistent browsing context environment information may be included in a persistent browsing context request, or it may be exchanged before, later, or concurrently with a persistent browsing context request. [0109] The client computing device 102A may send a persistent browsing context request to the network computing provider 107. In an illustrative embodiment, the network computing provider 107 uses a registry application program interface (" API") to accept persistent browsing context requests from the client computing device 102. In one embodiment, the persistent browsing context request may include a browsing session request or other identifying information requesting content as described in Figures 2 -6 above. [0110] Subsequent to receiving the persistent browsing context request, the network computing provider 107 may select an NCC POP as the NCC POP 142 to service the persistent browsing context request. The selection of processing and network resources, and the provisioning of software in the NCC POP instance, can be done, at least in part, in order to optimize communication with content providers 104 and client computing device 102, for example, as based on location or performance information included in persistent browsing context environment information or persistent browsing context request. [0111] The selected NCC POP 142 can generate a corresponding persistent browsing context based on the request persistent browsing context and any persistent browsing context environment information exchanged between the client computing device 102A and the network computing provider 107. Illustratively, instantiating a new persistent browsing context instance may include loading a new virtual machine instance and/or browser instance with NCC POP 142, reserving or allocating device memory, storage space or cache, time of processor, network bandwidth, or other computational or network resources to the new persistent browsing context. [0112] Although not shown here for clarity, subsequent to a new persistent browsing context being instantiated in NCC POP 142, client computing device 102A may provide NCC POP 142 with requests for new browsing sessions or other corresponding requests to the requested content. The NCC POP 142 can create any number of new browsing sessions corresponding to the new browsing session requests and/or content requests and exchange various browsing session information with the client computing device 102A. For example, NCC POP 142 can provide initial processing results to client computing device 102A and exchange computing user interaction data and updating processing results with client computing device 102A, as described in Figures 2- 6 above. The NCC POP 142 can additionally receive browser configuration data and content corresponding to changes in browser state, configuration or preferences and the display of content in the browser. The NCC POP 142 can process browsing session information and configuration data and can maintain the content information and status in the persistent browsing context. Illustratively, new browsing sessions corresponding to the requested content can be instantiated in the same NCC POP 142 as persistent browsing context, or can be instantiated in any other NCC POP based on any number of performance, cost, or preference factors, as discussed above with reference to Figure 11, in various arrangements, a browsing session can be created for each piece of content, tab, window, frame, content group or any combination of its associated with persistent browsing context. Illustratively, each browsing session can be associated with the same remote browsing session configuration, or with a different remote browsing session configuration, as described with reference to figures 8-10 above. [0113] Referring to Figure 11, a block diagram of the content delivery environment of Figure 1 illustrates the generation and processing of a request to access an existing persistent browsing context from a client computing device 102B to a provider. network computing 107 is disclosed. As illustrated in Figure 11, a second client computing device 102B may attempt to access a persistent browsing context request existing at network computing provider 107 over network 108. In an illustrative embodiment, network computing provider 107 uses a registration API for accepting persistent browsing context requests and persistent browsing environment context information from the 102B client computing device. [0114] Illustratively, subsequent to the creation of a new persistent browsing context as described above with reference to FIGURE 12, a user of a 102A client computing device may stop interacting with the displayed content or may otherwise output the browser running on the client computing device 102A, for example, the user may close the software browser application running on the client computing device 102A, may turn off the client computing device 102A, or may simply engage in an alternative activity. In one embodiment, the NCC POP 142 can maintain a software browser application associated with the persistent browsing context even after a connection to a client computing device 102A is lost. In other embodiments, the NCC POP 142 may store data associated with a current state of the persistent browsing context, including displaying content data, session or content state data, configuration data or browser state, etc. [0115] The user of client computing device 102A may later decide to return to the persistent browsing context earlier. Illustratively, the user of client computing device 102A may choose to access the previous persistent browsing context through a second client computing device 102B, which may have network access from client computing device 102A, different software or hardware. . Although client computing device 102B is described herein as a second client computing device for purposes of example, it should be understood that all descriptions in this figure can be applied to a subsequent access of a persistent browsing context by the original device. 102A client computing. Furthermore, although for purposes of example, the user of client computing device 102B is described as the same as client computing device 102A, it is to be understood that, in various embodiments, an existing persistent browsing context can be accessed by either party and can be accessed based on any type of identifying information including browser information, user information (eg an ID, login or password), device information, an environment identifier, a context identifier persistent browsing, etc. [0116] The request to access a persistent browsing context can start with the exchange of persistent browsing context environment information with reference to Figure 12 described above. The exchange of persistent browsing context information may be initiated by a client computing device 102B in response to a user opening a new browser window with a new content display area, opening a new content display area in an existing browser window (for example, opening a new tab in a browser), requesting new network content in an existing content display area (for example, following a link to a new network resource, or entering into a new network address for the browser), or any other user interaction. An impersonation, persistent browsing context environment information provided by client computing device 102B to network computing provider 107 may include, but is not limited to, browser information, user information (e.g., an ID, login or password), device information, an environment identifier, a persistent browsing context identifier, etc. Responding to such identification information, the network computing provider 107 may provide the computing client device with available session information, including a list of available persistent browsing contexts associated with the identification information. Persistent available browsing may correspond to active software processes or data stored on the NCC POP 142 or any other combination of NCC POPs or network computing or storage devices associated with the network computing provider 107. [0117] The client computing device 102B can select an existing persistent browsing context from the list of available persistent browsing contexts provided by the network computing provider 107 and can pass the persistent browsing context selection to the network computing provider 107. An illustrative user interface for selecting an existing persistent browsing context is provided with reference to Figure 15 below. Although not shown here for clarity, upon receiving the persistent browsing context selection, the network computing provider 107 can cause the client computing device 102B to be bound to an existing persistent browsing context in the NCC POP 142. In one embodiment, this may include accessing a currently running software browser application or launching a new software browser application on an NCC POP 142 based on previously stored persistent browsing context information, such as content, states of content, and/or browser states. The NCC POP 142 can create new browsing sessions or access existing browsing sessions corresponding to content associated with the persistent browsing context and may transmit initial processing results corresponding to present states of the content associated with the persistent browsing context and a current state of the browser associated with the persistent browsing context. The client computing device 102B and the NCC POP 142 can exchange user interaction data, content requests, results processing and browser configuration information, for example, as described in relation to figures 2-6 and 12 above. [0118] Referring to FIGURE 14, a block diagram of the content delivery environment of Figure 1 illustrates the generation and processing of a new additional persistent browsing context request from a client computing device 102B to a provider of network computing 107 is disclosed. Illustratively, client computing device 102B may request a new persistent browsing context in response to a user opening a new browser window with a new content display area by opening a new content display area in a browser window. existing browser (eg opening a new tab in a browser), requesting new network content in an existing content display area (eg subsequent to a link to a new network resource or entering a new network address to the browser), or any other user interaction. [0119] In one embodiment, if a connection with a first persistent browsing context has already been established, client computing device 102B and network computing provider 107 may not exchange persistent browsing environment context information as described with reference to Figure 12. As described above, with reference to Figures 12, right after the request for the new persistent browsing context, the network computing provider 107 can cause an instantiation of a virtual machine, data store, and/or browser software application on an NCC POP 142 to maintain state and content associated with a new persistent browsing context. As discussed above, with reference to Figure 12, a network computing provider 107 can select an NCC POP to service a context persistent browsing request based on several factors, including but not limited to the available NCC POP resources ( eg available memory, processor load, network load, etc.), a financial cost of maintaining persistent browsing context request in NCC POP, location of the respective NCC POP for a client computing device 102, content provider 112 or CDN POP 116, an NCC POP cache status (for example, if requested content is already stored in an NCC POP cache), etc. Illustratively, although network computing provider 107 is depicted here for purposes of illustration as selecting NCC POP 142, network computing provider 107 can select any existing NCC POP to service the persistent browsing context request. As discussed above, the decision whether to select a different NCC POP than the one used for a previous or concurrent persistent context browsing can be made based on available system resources, randomly, or according to any other factor, as discussed above and with with respect to Figure 12. Illustratively, once established the new persistent browsing context, the client computing device 102B and the NCC POP 142 can proceed to establish browsing sessions and exchange of user interaction data, content requests, processing results and browser configuration information, for example, as described in relation to figure 12 above. [0120] Figure 15 is a user interface diagram depicting an illustrative persistent navigation context selection interface 1500. As described with reference to Figures 13 and 16, after a client computing device provides identifying information from a network computing provider 107, the network computing provider 107 can provide the client computing device 102 with a list of 1502 persistent available browsing contexts based on identifying information. For example, a client computing device 102 may provide the browser environment with identifying information, in response to a user opening a browser application or otherwise identifying a browser environment to access. In another example, a client computing device 102 may provide user identification information such as a login or password to the network computing provider 107, the network computing provider 107 may respond to that identification information by providing a list. of persistent available browsing contexts 1502 to the client computing device 102. In one embodiment, the list of available persistent browsing contexts 1502 may be presented to the user in a persistent browsing context selection interface 1500 identifying the persistent environment context navigation (eg "John's house") based on identifying information, as discussed above, Illustratively, a persistent navigation context selection interface 1500 can provide the list of available persistent navigation contexts 1502 along with information as a last persistent browsing access date tracking context, etc. In one embodiment, the persistent browsing context selection interface 1500 may allow a user to create a new persistent browsing context as well as accessing an existing persistent browsing context, as described in reference to Figures 12 and Figure 13, respectively. . [0121] Figure 16 is an illustrative flow diagram of a persistent browsing client routine implemented by a client computing device 102 of Figure 1. Persistent browsing client 1600 routine starts at block 1602, Illustratively, persistent browsing client 1600 The routine may begin in response to a new instance of a software browser application being instantiated on the client computing device 102, a requesting user access to a persistent browsing context of a software browser application previously instantiated on the client computing device. client 102 or any other computing event. [0122] At block 1604, the client computing device 102 establishes a connection and exchanges context environment persistent browsing information with a network computing provider 107. Illustratively, persistent browsing context environment information can include any number of types information, including, but not limited to, configuration information, identifying information, browsing preference information, information about currently active persistent browsing contexts, etc. For example, the client computing device 102 may transmit information to the persistent browsing context environment including device information, browser software information, location information, a user id or other user information, a user environment identifier. persistent browsing context, information specifying a previous browsing history or a set of tokens for use within the persistent browsing context, or any other type of information, specifically, for illustration purposes, the persistent browsing context environment information sent to the network computing provider 107 by client computing device 102 may include, but are not limited to, hardware and software information associated with client computing device 102, identification information of a user (e.g., a login and password , a user id, etc.), information associated with the user, an identifier persistent browsing context icon, browser settings or preferences, a physical or logical device location, etc. [0123] In one embodiment, the persistent browsing context environment information may include a persistent browsing context environment identifier associated with a set of existing persistent browsing contexts or persistent browsing context preferences stored in the network computing provider. For example, a user on client computing device 102 might choose to access a persistent browsing context environment called "John's Home". With respect to this specific example, the client computing device 102 may provide a persistent browsing context environment identifier associated with the persistent browsing context environment "John's home" to the network computing provider 107 as part of the information about the navigation environment. Illustratively, the "John's home" browsing environment identifier may be associated with a number of different persistent browsing contexts in the network computing provider 107, as discussed below, and may even be associated with common preferences or configuration information for the associated persistent browsing contexts, such as bookmarks or browsing history. In various other embodiments, persistent browsing contexts and various preferences or configuration information can be associated with identifying information corresponding to a user, a client computing device 102, a physical or logical location, a browser software, operating system, or other software, a network address, performance or network characteristics of the device, or any other entity, device or piece of information. In other embodiments, persistent browsing context environment information may be included in the persistent browsing context request, or it may be exchanged, prior or simultaneously to the new persistent browsing context request. In various embodiments, persistent browsing context environment information may additionally or alternatively include a persistent browsing context identifier identifying a particular existing persistent browsing context. [0124] Illustratively, in some embodiments, a navigation environment identifier can be implemented in a computer or a human-readable format, such as a string of alphanumeric characters, consisting of letters, numbers, or other characters and/or encoded in bar code, radio frequency identification transmitter or any other code or transmission format. Illustratively, a client computing device 102 can be configured to read a browsing environment identifier and use the browsing environment identifier to identify sets of persistent browsing contexts and configuration information related to a network computing provider 107. For the purpose of a specific example, a first user may obtain a browsing resource identifier, or an electronic address (eg a uniform resource locator (URL)), including information corresponding to the address of a network computing provider along with a navigation environment identifier. Illustratively, such a browsing environment identifier or electronic address may in various embodiments be generated by the browser on the client device 102, the network computing provider and storage component 107, the first user, or any other service, entity or device. computing. The first user can provide the email address to a second user (eg by email). The second user may provide the electronic address to the network computing provider 102 through a browser running on a client computing device 102 associated with the second user to access the persistent browsing context and corresponding configuration information associated with the navigation environment identifier. For example, the electronic address may, in one embodiment, be presented as a hyperlink containing a network computing provider address 107, and the browsing environment identifier; and the second user can cause the navigation environment identifier to be transmitted to the network computing provider 107 by clicking on, or otherwise following the link. In various other embodiments, a persistent browsing context identifier may be transferred between or read by the customer using any other technology as known in the art, including, but not limited to, QR codes, barcodes, radio frequency identification codes , close to etc. infrared, communication, Bluetooth, computing devices field. Illustratively, in other embodiments, identifiers identifying a particular persistent browsing context existing in a network computing provider 107 may be transmitted using any of the same methodologies as described above with reference to browsing environment identifiers. [0125] The network computing provider 107 can respond to persistent browsing context information from the client with a list of existing, available, persistent browsing contexts associated with the specified device/user/environment identifier, information. setting for the browser running the client computing device, bookmarks, or browsing history, to associate with the software browser for persistent browsing context, etc. In one embodiment, at block 1606, the client computing device may provide persistent browsing context environment authentication information to the network computing provider 107. For example, in response to identification information received from the client computing device 102 (e.g., a persistent context browsing environment identifier, user, device or browser identification information, etc.), the network computing provider 107 may require additional authentication information, such as a login and/or password. Illustratively, this authentication information can be requested or provided over a secure connection using any protocol or technology, as known in the art. [0126] At block 1608, client computing device 102 obtains current active persistent browsing context information such as a list of currently active persistent browsing contexts associated with one or more aspects of the identification information exchanged in block 1604 above. Illustratively, the current, active, persistent browsing context information may include various information about one or more of the persistent browsing contexts in the list, including, but not limited to, persistent browsing context names or identifiers, browsing context dates persistent browsing context last accessed, total persistent browsing context time spent browsing, persistent browsing context creation dates, identifiers or other persistent browsing context category information, content lists associated with each persistent browsing context, notes generated by the user, device or browser access logs, or any other identification or history information. In some embodiments, block 1608 may not occur, may be combined with another block, or may occur later or earlier than depicted in routine 1600. For example, block 1608 may not be necessary if the computing device is client has specified a certain persistent browsing context to join as part of the persistent browsing context information environment, there is no currently active persistent browsing context associated with one or more aspects of identifying information, etc. [0127] At decision block 1610, client computing device 102 may provide a new persistent browsing context request to network computing provider 107 at block 1612 as described in Figures 12 and 14 above, or may identify a context persistent browsing context currently active to access in decision block 1614. At block 1612, providing a new persistent browsing context request to network computing provider 107 may cause network computing provider 107 to instantiate a new browsing context persistent corresponding to the request. Illustratively, in one embodiment, the new persistent browsing context request may include one or more addresses or references to various network resources or other content requested by client computing device 102. In another embodiment, the persistent browsing context request may include association information associating the new persistent browsing context with one or more aspects of identifying information included in the persistent browsing context environment information as described above with reference to block 1604. In an illustrative embodiment, the context request of Persistent navigation is passed in accordance with an API. Subsequent to providing the browsing request to the network computing provider 107, the client computing device 102 can provide persistent browsing context selection information by selecting the new persistent browsing context to the network computing provider 107. In In some arrangements, routine 1600 will proceed directly to block 1616 without providing further selection information. [0128] At block 1614 the client computing device 102 can select an existing persistent browsing context. Illustratively, the client computing device 102 may provide persistent browsing context selection information to the network computing provider 107. In one embodiment, the persistent browsing context selection information may correspond to one or more persistent browsing contexts , actives, included in the current active, persistent browsing context information provided to client computing device 102 in block 1608. Illustratively, routine 1600 can ignore this block, for example, if a new persistent browsing context has been created , or if a specific existing persistent browsing context has already been identified in the persistent browsing context environment information exchanged in block 1604 above. [0129] At block 1616, client computing device 102 may obtain one or more initial processing results from network computing provider 107 corresponding to the content of the persistent browsing context selected in block 1614 above. The results of the initial processing can correspond to browsing sessions associated with the persistent browsing context and instantiated in the POP NCC of one or more associated network computing providers 107 described with reference to Figures 9-11 above. The results of the initial processing can be associated with representations of the content associated with the persistent browsing context. For example, in the case of a new persistent browsing context, initial processing results can be associated with representations of the requested content in association with the new persistent browsing context. In the case of an existing persistent browsing context, initial processing results may be associated with content representations associated with the existing persistent browsing context, such as, for example, corresponding web pages with open tabs associated with the persistent browsing context . Illustratively, representations of content associated with an existing persistent browsing context can include the previous state of the content (that is, the state of the content as of the last access of the persistent browsing context). For example, a user of a client computing device 102 accessing a persistent browsing context at the network computing provider 107 may have opened multiple web pages in different tabs in a browser for the client computing device 102. The user further you may have scrolled down through the web page content on a web page first and inserted web form data on a second web page before closing the browser on client computing device 102, with respect to that specific example, a browser on a client computing device 102 accessing the persistent browsing context associated with the network computing provider 107 may receive rendering results corresponding to representations of the web pages as they were displayed before the browser was closed. As an example, the rendering results might therefore match the displayed section of the scrolled down web page and match the second web page with data intact, as well as any other representations of content as it was displayed before the browser was closed to the client computing device 102. Illustratively, the format and included in the initial data processing results may vary based on the remote session navigating the configuration selected by the network computing provider 107 as discussed above with reference to the figures 9-11. A client computing device 102 accessing the persistent browsing context may still receive browser configuration information corresponding to a browser state before the original browser was closed, including, but not limited to, a layout of interface elements in the browser, state or style view (for example, displaying content in tabs, windows or frames and how many to display for each) a browser theme or visual overlay, browser preferences, browser history, existing cookies or other identifying information, bookmarks and any other settings, settings, or information associated with the browser. [0130] In one embodiment, initial processing results received from the network computing provider 107 and associated with a persistent browsing context may correspond to a number of different resources or content (eg, a number of web pages). As described above with reference to Figure 7, resources can be presented in different tabs in a browser interface on client computing device 102, or they can be presented as a series of windows, as frames in a single window, such as elements in a list, or in any other visual or organizational representation. Illustratively, whether the visual representation or arrangement of resources is such that a resource will be displayed initially, that is, before other resources are displayed (for example, the tab currently open in a browser organized by tabs like the one shown in Figure 7 above ), results corresponding to representations of this processing resource may be given processing or handover priority to client computing device 102 and/or network computing provider 107. For example, client computing device 102 may perform the necessary processing steps on processing results corresponding to initially displayed resources before performing processing steps on processing results corresponding to resources that will be hidden by the browser interface (for example, resources in tabs not currently displayed). As another example, network computing provider 107 may prioritize one or more browsing sessions associated with the initially displayed resources. Illustratively, prioritize can include processing results corresponding to the resources initially displayed before sending the processing results corresponding to other resources. In other modalities, the processing and/or transfer of processing results may be prioritized based on other factors, including identifiers generated by a user or browser, a content type, identifiers in the feature code (for example, HTML identifiers or metadata), a content importance, hardware or network specifications or requirements, or any other factor. [0131] At block 1618, client computing device 102 can process persistent browsing context user interactions, including providing user interaction data or new resource requests to network computing provider 107. User interactions Persistent browsing context modalities correspond to processing and receiving processing results related to content representations interacted with or requested as described above, with reference to Figure 11. Some illustrative modalities related to processing persistent browsing context user interactions are described below. However, such modalities should not be considered as a limiting factor or imply the required order or combination of modalities. [0132] In one aspect, the client computing device 102 can duplicate the existing persistent browsing context by providing a persistent browsing context duplication request to the network computing provider 107. Illustratively, the network computing provider 107 can process the persistent browsing context duplication request and instantiate a new persistent browsing context from the network computing provider with identical content and state to the original persistent browsing context. In one modality, a persistent browsing context duplication request may be generated by a browser accessing an existing persistent browsing context. For example, a user may access an existing persistent browsing context from a new client computing device 102 or through a client computing device 102 that was previously used by the user. The network computing provider 107 can duplicate the existing persistent browsing context and provide the user with representations of the original content associated with the existing persistent browsing context and now associated with the duplicated persistent browsing context. For the purposes of this example, the user can interact with the content representations associated with the duplicate persistent browsing context for the new computing client device, which can change the content states or content associated with the duplicate persistent browsing context. [0133] At a later time, the user can once again access the existing original persistent browsing context. Illustratively, the network computing provider 107 can provide the user with representations of the original content and content states associated with the existing persistent browsing context and not representations of content or content states associated with the duplicated persistent browsing context. Alternatively, the user may wish to continue accessing the duplicate persistent browsing context that was later modified. [0134] In another aspect, if the original persistent browsing context was associated with any specific persistent browsing context environment information (for example, a browsing environment identifier or other identifying information), then the persistent browsing context has just -Duplicate instantiated can be associated with the same persistent browsing context environment information or can be created as not associated with any specific information. The duplicate persistent browsing context can be instantiated in the same NCC POP 142 as the original persistent browsing context, or it can be instantiated in any other NCC POP associated with the network computing provider. [0135] In a further aspect, a client computing device 102 can import or export content and/or preferences between persistent browsing contexts. For example, a client computing device 102 may provide a content import request to a network computing provider 107. In one embodiment, the content import request may include one or more content identifiers in a context of current persistent navigation and a persistent navigation context identifier to import. As a specific example, the content import request might include two-tab identifiers corresponding to the web pages displayed in the current persistent browsing context. The network computing provider 107 can add these tabs to the specified existing persistent browsing context. In various embodiments, these tabs can be removed or kept in the current persistent browsing context, and can be added to the specified persistent browsing context with or without any content state information (eg input form data or state, etc.). ), associated with the content in the current persistent browsing context. In another embodiment, client computing device 102 may provide an import browser configuration request to network computing provider 107. Illustratively, an import browser configuration request may specify one or more aspects of a configuration of a browser to access the current persistent browsing context (eg bookmarks, history, visual preferences, etc.) and can have the network computing provider 107 add the specified setting to another existing persistent browsing context specified in a mode, the specified setting may overwrite any existing setting in the specified browser. [0136] In yet another aspect, a client computing device 102 may associate an existing persistent browsing context with identifying information (e.g., a browsing environment identifier, a user id, a browser identifier, etc.) , as discussed above, with reference to persistent browsing context environment information exchange at block 1604. For example, client computing device 102 may provide a browsing session request associated with network computing provider 107, which can specify specific identifying information with which you want to associate the current browsing session. A client computing device 102 may further send requests to the network computing provider 107 to associate a persistent browsing context with a new identifier (e.g., a new persistent browsing context identifier, or browsing environment identifier ). In one embodiment, a client computing device 102 may further send requests to the network computing provider 107 to associate a particular browser or client computing device configuration with a specific identifier or piece of identifying information. Illustratively, in one embodiment, all persistent browsing contexts associated with a specific identifier or piece of identifying information may share one or more aspects of a client computing device or browser configuration, for example, all browsing contexts Persistents associated with a specific browser environment identifier may share browser configuration information including, but not limited to, a set of bookmarks or browser history. [0137] Returning to Figure 16, at block 1620 routine 1600 ends. In one embodiment, this may correspond to the client device user 102 ending their interaction with the persistent browsing context. Illustratively, the same or a different client computing device 102 may request access to and interact with the persistent browsing context at a later time via the same computation routine 1600. As discussed above, any number of client computing devices 102 Different users, or users, can access any number of persistent browsing contexts. In addition, one or more 102 client computing devices or users can access a persistent browsing context any number of times after it is created. [0138] Figure 17 is an illustrative flow diagram of a remote persistent navigation routine 1700 implemented by a network computing provider 107 of Figure 1. Remote persistent navigation routine 1700 begins at block 1702. At block 1704 , the network computing provider 107 exchanges persistent browsing context environment information with the client computing device 102. As described above with reference to Figure 8, persistent browsing context environment information may include any number of types of information, including, but not limited to, configuration information, identifying information, browsing preference information, information about persistent, currently active browsing contexts, etc. For example, the network computing provider 107 may receive various identifiers, including, but not limited to, device information, browser software information, location information, a user id or other user information, an identifier persistent browsing context environment, etc. In one embodiment, the network computing provider 107 can determine existing persistent browsing contexts associated with one or more pieces of information. For example, the user of client computing device 102 can be associated with several existing persistent browsing contexts. As another example, persistent browsing context environment information can specify a single existing browsing session to be loaded. [0139] In another embodiment, the network computing provider 107 may determine various browser configuration information (eg browser style, layout, theme, preferences, history, favorites, etc.) associated with one or more pieces of persistent browsing context environment information. For example, the user to client computing device 102 may be associated with a set of navigation history and indicators. Illustratively, in a modality, one or more persistent browsing content created or accessed by the user can share an associated set of browsing history and bookmarks, rather than being associated with a set of browsing histories and corresponding bookmarks for each browsing session persistent individual. [0140] As part of the persistent browsing context environment information exchange in block 1704, the network computing provider 107 may provide certain browser configuration information or any other information to the client computing device 102 as described above, with reference to Figure 16. In block 1706, the network computing provider may provide active persistent browsing context information as a list of one or more active persistent browsing contexts associated with one or more aspects of the information. persistent browsing context environment for client computing device 102. Illustratively, network computing provider 107 cannot perform this step in cases where there are no active persistent browsing contexts associated with one or more aspects of the environment information persistent browsing context, or where the browsing context environment information persists nt specifies a specific existing or new persistent browsing context to be accessed. [0141] In block 1708, the network computing provider 107 obtains persistent browsing context selection information from the client computing device 102. In one embodiment, the persistent browsing context selection information identifies a browsing context existing, active, persistent. From the user's perspective for the client computing device 102, a persistent browsing context can represent state data and content associated with a browser or other application running on a client computing device 102. For example, the persistent browsing context can be associated with a number of tabs open in the browser, the content displayed in any browser, a current state of the content displayed, and the tabs or application configuration data associated with the browser or content display. From the perspective of the network computing provider 107, a persistent browsing context may be associated with stored or cached content corresponding to content displayed in a browser on a client computing device 102, as well as the content state and the state of the browser, including any browser configuration information. [0142] In one embodiment, the network computing provider 107 may maintain one or more browsing sessions associated with the persistent browsing context in the various NCC POPs associated with the network computing provider 107. Illustratively, each browsing session may be associated with a different piece of content, browser tab, window, frame, etc. of the browser working with the client computing device 102 as described in figures 9-11 above. In one modality, each browsing session can be associated with any number of remote browsing session configurations, the same or different. In another embodiment, the network computing provider 107 may select a new remote browsing session configuration for one or more browsing sessions associated with a persistent browsing context each time a client computing device 102 accesses the computing context persistent browsing. For example, if a client computing device with limited processing power accesses an existing persistent browsing context, the network computing provider 107 can select remote browsing session settings for one or more associated browsing sessions that allow it to a major part of the processing is performed at the computing network provider 107. [0143] In another embodiment, the network computing provider 107 may also maintain additional information associated with the persistent browsing context in one or more NCC POP, including, but not limited to, browser configuration information describing a state of the browser to client computing device 102. In the other embodiment, a network computing provider 107 may maintain a software browser application associated with a persistent browsing context in an NCC POP 142. network 107 can run a software browser application associated with the persistent browsing session in parallel with the browser running on the client computing device 102. Illustratively, the browser running on the network computing provider 107 can maintain content, content state, and browser state associated with the persistent browsing session. [0144] At block 1710, the network computing provider 107 can determine whether an update of content associated with the selected persistent browsing context is required. Illustratively, the content associated with the selected persistent browsing context can change between being accessed by the computing device client 102. For the purpose of a specific example, a user can display a web page, indicating the latest news at a first time and then access the persistent browsing context at a later time when the web page with breaking news might have changed. In one embodiment, the network computing provider 107 may update the changed content (e.g., re-requesting content from a content provider, CDN, or cache) before sending the processing results corresponding to the content to the computing device. of customer. In other embodiments, network computing provider 107 may preserve old page content and/or page state to provide to the client computing device. Providing processing results corresponding to the content of the old page may be desired, for example, when a news article has been changed or removed since the last access of the persistent browsing context by a client computing device 102. [0145] The network computing provider 107 can determine whether it wants to update content associated with the selected persistent browsing context based on a number of factors including, but not limited to user options or preferences, an attribute of the content (for example , size, embedded features, content type, content category), flags or identifiers associated with the content, or preferences associated with a network computing provider 107, client device 102, browser or application, operating system, CDN service provider 106, content provider 104, or another entity or computing system. In one embodiment, the network computing provider 107 may provide processing results associated with the old content to the client computing device 102 for display, as well as retrieving and preprocessing the updated content in preparation for a request to update the contents. [0146] At block 1712, network computing provider 107 may update any content for which an update is determined to be required at block 1710. Illustratively, this may involve requesting content from a service provider CDN 106, content provider 104, or cache as described above with reference to figures 3 and 4. [0147] In block 1714, the network computing provider 107 can process the content associated with the persistent browsing context to generate processing results corresponding to the representations of the content, as described in Figures 9-11 above. Illustratively, the network computing provider 107 can process the content taking into account any saved content state data associated with the persistent browsing context, in order to ensure that the processing results match the last viewed representations of the content. [0148] Illustratively, in one embodiment, a different set of client computing devices 102 with different display capabilities can access a persistent browsing session. In one embodiment, the network computing provider 107 can process content associated with the persistent browsing session specifically to display on the client computing device currently accessing the persistent browsing session. Illustratively, any browser or content state information associated with a persistent browsing session that may be inappropriate or unnecessary for display on a particular computing client device may be discarded, or kept, but not used in content processing and display content to the client computing device. For example, a first client computing device 102A may create a new persistent browsing session with a network computing provider 107. For this specific example, the first client computing device may be a personal computer with a large screen, keyboard and mouse. A user on the first client computing device 102A can load multiple web pages in different tabs of a browser running on the client computing device and connected to the persistent browsing session. Illustratively, web pages loaded on the client computing device can be displayed when formatted for a large-screen browsing window. [0149] Continuing the specific example, at a later time, a second client computing device 102B may access the persistent browsing session. Illustratively, the second client computing device 102B can be a smart phone or other device with limited screen size and input capabilities. In one embodiment, the network computing provider can provide processing results to the second client computing device 102B where the content that is associated with the persistent browsing session is formatted for a small screen. If, in one embodiment, the second client computing device 102B does not have tabbed browsing capabilities, the network computing provider 107 may provide browser configuration information, specifying only the upper tab of the persistent browsing session is to be displayed, or may provide a list of open tabs associated with the persistent browsing session to the second computing client device 102B for a user to select. [0150] In block 1716, the network computing provider 107 may provide the initial processing results to the client computing device, along with any other browser configuration information associated with the persistent browsing context. [0151] In block 1718, the network computing provider 107 can process the user interactions with the client computing device, as illustratively described with reference to Figure 5 and Figure 11 above. [0152] At block 1720, routine 1700 ends. In one embodiment, the user may break a connection with the persistent browsing context by closing a browser or turning off the client computing device 102. In some embodiments, the network computing and storage device 107 may place a persistent browsing context in a passive state when no active interaction between the client computing device 102 and persistent browsing is taking place. Illustratively, putting a persistent browsing context into a passive state may include, but is not limited to, closing a software browser application running on the network computing and storage device 107 that is associated with the persistent browsing context, copy, move or store associated data in various content states, content, or browser states associated with the persistent browsing context, etc. In one embodiment, any changes made by placing a persistent browsing context into a passive state can be undone when the persistent browsing context is later requested by a client computing device 102. Network computing and storage device 107 may place a persistent browsing context in a passive state based on a number of factors, including, but not limited to, a client computing device 102 interaction data timeout, user options or preferences, a content attribute (by example, size, embedded features, content type, content category), flags or identifiers associated with the content, or preferences associated with a network computing provider 107, client computing device 102, browser or application, operating system, CDN 106, content provider 104, or other entity or system. [0153] Several exemplary modalities of disclosure can be described with respect to the following clauses: [0154] Clause 1. A computer-implemented method for remote session browsing comprising: obtaining a request for a persistent browsing context from a first client computing device; launch a new web-based browser software application matching the request to the persistent browsing context; obtaining content requested by the first client computing device, the content comprising a network resource, referencing one or more embedded resources; processing content to generate a first processing result, wherein the first processing result is associated with a first state of the requested content, and wherein the first processing result corresponds to a first representation of the requested content for display on the first computing device; providing the first processing result to the first client computing device, wherein the first client computing device is configured to display the first representation of the requested content; get a request to access the persistent browsing context of a second client computing device; and providing a second processing result to the second client computing device, wherein the processing of the second result is generated based at least in part on the first state of the requested content, wherein the second processing result corresponds to a second representation of the requested content for display on the second client computing device, and wherein the second client computing device is configured to display the second representation of the requested content. [0155] Clause 2. The computer-implemented method of Clause 1, wherein the first client computing device and the second client computing device are associated with the same user. [0156] Clause 3. The computer-implemented method of Clause 1, wherein the second client comprises the same computing device as the first client computing device at a subsequent time. [0157] Clause 4. The computer-implemented method of Clause 1, wherein the second processing result comprises the first processing result. [0158] Clause 5. The computer-implemented method of Clause 1, wherein the first state of the requested content is based on one or more user interactions with a representation of the requested content displayed on the first client computing device. [0159] Clause 6. The computer-implemented method of Clause 1 further comprising: obtaining a request for a second persistent browsing context by a third client computing device; and providing one or more processing results to the third client computing device, wherein the one or more processing results correspond to one or more representations of content requested by the third client computing device, and wherein the third computing device The client is configured to display the first one or more representations of the requested content. [0160] Clause 7. A computer-implemented method for remote session browsing, comprising: obtaining, at a network computing provider, a request for a first persistent browsing context from a first client computing device; providing, by the network computing provider, processing results to the first client computing device, wherein the processing results correspond to content representations responsive to the initial persistent browsing context; obtaining, at the network computing provider, a request to access a second persistent browsing context by a second client computing device, wherein the first and the persistent contexts are the same; and providing, by the network computing provider, second processing results to the second client computing device, wherein the second processing results correspond to the second representation of the content associated with the second persistent browsing context. [0161] Clause 8. The computer-implemented method of Clause 7, wherein the second client comprises the first client computing device. [0162] Clause 9. The computer-implemented method of Clause 7, wherein the second processing results include the first processing results. [0163] Clause 10. The computer-implemented method of Clause 7, wherein the first representations of the content requested by the first client computing device correspond to one or more states of the content requested by the first client computing device. [0164] Clause 11. The computer-implemented method of Clause 10, wherein the second representations of the content requested by the second client computing device correspond to the one or more states of the content requested by the first client computing device. [0165] Clause 12. The computer-implemented method of Clause 7 further comprising: obtaining, at a network computing provider, a request for a third persistent browsing context by a third client computing device; and providing, by the network computing provider, third processing results to the third client computing device, wherein the third processing results correspond to a third representation of content requested by the third client computing device. [0166] Clause 13. The computer-implemented method of Clause 12 further comprising duplicating the first persistent browsing context to generate the third persistent browsing context. [0167] Clause 14. The computer-implemented method of Clause 13, in which user interactions with content representations associated with the third persistent browsing context do not modify the first persistent browsing context. [0168] Clause 15. The computer-implemented method of Clause 12, wherein the first persistent browsing context and the second persistent browsing context are associated with the same shared, browser configuration information. [0169] Clause 16. The computer-implemented method of Clause 15, wherein the shared browser configuration information includes at least one of the persistent browsing context display preferences, preferences information, application visual appearance preferences. browser and browsing history common to the first persistent remote browsing context and the second persistent remote browsing context. [0170] Clause 17. The computer-implemented method of Clause 12, wherein the third client computing device comprises at least one of the first client computing device and the second client computing device. [0171] Clause 18. The computer-implemented method of Clause 17, wherein the third client computing device is configured to display the first one or more representations of the requested content and the third one or more representations of the requested content in at least one of the separate software browser application windows, separate browser frames, and separate browser tabs. [0172] Clause 19. A system for remote session navigation comprising: one or more computer processors; at least one computer memory accessible by at least one of the one or more computer processors; and a network computing component comprising an executable software module executed by the one or more computer processors, wherein the network computing component is operable to: obtain a request for a persistent browsing context from a first device. client computing; process content associated with the persistent browsing context for generating first processing results, wherein the first processing results correspond to the first representations of the content for display on the first client computing device; getting a request to access persistent browsing context from a second client computing device; and processing the content associated with the persistent browsing context to generate second processing results, wherein the second processing results correspond to a second content representation for display on the second client computing device. [0173] Clause 20, the Clause 19 system, wherein the second customer comprises the same computing device as the first customer computing device at a subsequent time. [0174] Clause 21. The system of Clause 19, wherein the second one or more processing results comprises the first one or more processing results. [0175] Clause 22. The Clause 19 system, wherein the first representations of the content associated with the persistent browsing context correspond to one or more content states associated with the persistent browsing context. [0176] Clause 23. The Clause 22 system, wherein the second representations of the content associated with the persistent navigation context correspond to the first one or more states of the content associated with the persistent navigation context. [0177] Clause 24. The Clause 19 system, wherein the network computing component is further operable to: obtain a request for a subsequent persistent browsing context by a third client computing device; and providing third processing results to the third client computing device, wherein the third processing results correspond to third representations of the content requested by the third client computing device, and wherein the third client computing device is configured to display the third representation of the requested content. [0178] Clause 25, the Clause 24 system, in which the network computing component is operable further to duplicate the persistent browsing context to generate the subsequent persistent browsing context. [0179] Clause 26. The Clause 25 system, where user interactions with content representations associated with the subsequent persistent browsing context do not modify the persistent browsing context. [0180] Clause 27. The Clause 24 system, wherein the first remote persistent browsing context and the second persistent browsing context are associated with shared browser configuration information. [0181] Clause 28. The Clause 27 system, wherein the shared browser configuration information includes at least one of the persistent browsing context display preferences, bookmark information, browser application visual appearance preferences and history common to the first remote persistent browsing context and the second remote persistent browsing context. [0182] Clause 29. The system of Clause 24, wherein the third client computing device comprises at least one of the first client computing device and the second client computing device. [0183] Clause 30. The Clause 29 system, wherein the third client computing device is configured to display the first one or more representations of the requested content and the third one or more representations of the requested content in at least one of the windows separate software browser application, separate browser frames, and separate browser tabs. [0184] Although illustrative modalities have been disclosed and discussed, those skilled in the relevant art will consider that additional or alternative modalities may be applied within the spirit and scope of the present invention. For example, the techniques described in this document can be used, without departing from the scope of the present invention, to enable remote processing management in any number of other software applications and processes, including, but not limited to, editing software. image or video, database software, office productivity software, 3d design software, audio and sound processing applications, etc. Furthermore, although many modalities are indicated as illustrative, those skilled in the relevant art will consider that illustrative modalities need not be combined or implemented together. As such, some illustrative embodiments need not be used or implemented in accordance with the scope of variations for the present disclosure. [0185] Conditional language, such as, but not limited to, "may," "could", unless otherwise indicated, or otherwise understood within the context as used, is generally intended to convey that certain modalities include, while other modalities do not include certain features, elements and/or steps. Thus, such conditional language is generally not intended to mean that features, elements and/or steps are in any way necessary for one or more modalities or that one or more modalities necessarily include logic to decide, with or without user input or action, whether these features, elements and/or steps are included or must be performed in any specific modality. [0186] Any descriptions of process, elements or blocks in the flow diagrams described herein and/or illustrated in the attached figures should be understood as potentially representing modules, segments or pieces of code comprising one or more executable instructions to implement specific functions or logical steps of the process. Alternative implementations are included within the scope of the embodiments described herein in which elements or functions may be excluded, performed out of the order shown or discussed, including substantially simultaneously or in reverse order, depending on the functionality involved, as would be understood by those skilled in the art. It will further be appreciated that the data and/or components described above may be stored on a computer readable medium and loaded into the memory of the computing device using a drive mechanism associated with a computer storing the computer executable components such as a CD-ROM, DVD-ROM, or additional network interface, component and/or data may be included on a single device or distributed in any manner. Accordingly, general purpose computing devices can be configured to implement the processes, algorithms and methodology of the present disclosure with the processing and/or execution of the various data and/or components described above. [0187] It should be emphasized that many variations and modifications can be made in the modalities described above, the elements of which should be understood as being among other acceptable examples. All such modifications and variations are hereby included within the scope of this disclosure and protected by the following claims.
权利要求:
Claims (16) [0001] 1. Computer-implemented method for remote session browsing, characterized in that it comprises: obtaining, at a network computing provider (107), a request for a first persistent browsing context of a first client computing device ( 102); instantiating, in the network computing provider (107), an instance of a virtual machine comprising a software browser application capable of maintaining a persistent browsing context; providing, by the network computing provider (107), processing results to the first client computing device (102), wherein the processing results correspond to initial representations of content responsive to the initial persistent browsing context; maintaining, at the network computing provider (107), one or more components of the software browser application executed subsequently by providing the processing results to the first client computing device (102); obtain, at the network computing provider (107), a request to access a second persistent browsing context maintained at the network computing provider (107) by a second client computing device, wherein the first and second contexts are persistent are the same; and providing, by the network computing provider (107), second processing results to the second client computing device (102), wherein the second processing results correspond to the second representation of content associated with the second persistent browsing context. [0002] 2. Computer-implemented method according to claim 1, characterized in that the first representations of the content correspond to one or more states of the content requested by the first client computing device (102). [0003] 3. Computer-implemented method according to claim 2, characterized in that the second representations of the content correspond to one or more states of the content requested by the first client computing device (102). [0004] 4. Computer-implemented method according to claim 1, characterized in that it further comprises: obtaining, in a network computing provider (107), a request for a third persistent browsing context by a third computing device of customer (102); and providing, by the network computing provider (107), third processing results to the third client computing device (102), wherein the third processing results correspond to a third representation of the content requested by the third client computing device. customer (102). [0005] 5. Computer-implemented method according to claim 4, characterized in that it further comprises duplicating the first persistent browsing context to generate the third persistent browsing context, in which user interactions with content representations associated with the third context persistent browsing contexts do not modify the first persistent browsing context. [0006] 6. Computer-implemented method according to claim 4, characterized in that the first persistent browsing context and the second persistent browsing context are associated with the same shared browser configuration information. [0007] A computer-implemented method according to claim 4, characterized in that the third client computing device (102) comprises at least one of the first client computing device (102) and the second client computing device. customer (102). [0008] 8. The computer-implemented method of claim 7, characterized in that the third client computing device (102) is configured to display the first representations of the content and the third representations of the content in at least one of the windows separate software browser application, separate browser frames, and separate browser tabs. [0009] 9. System for remote session navigation, characterized in that it comprises: one or more computer processors; at least one computer memory accessible by at least one of the one or more computer processors; and a network computing component (107) comprising an executable software module executed by the one or more computer processors, wherein the network computing component (107) is operable to: obtain a request for a persistent browsing context of a first client computing device (102); instantiating an instance of a virtual machine comprising a software browser application capable of maintaining persistent browsing context; processing content associated with the persistent browsing context to generate first processing results, wherein the first processing results correspond to first representations of the content for display on the first client computing device (102); keep the persistent browsing context executed subsequently by providing content associated with the persistent browsing context; obtaining a request to access the persistent browsing context of a second client computing device (102); and processing the content associated with the persistent browsing context to generate second processing results, wherein the second processing results correspond to second representations of the content for display on the second client computing device (102). [0010] 10. System according to claim 9, characterized in that the first representations of the content associated with the persistent browsing context correspond to one or more states of the content associated with the persistent browsing context. [0011] 11. System according to claim 10, characterized in that the second representations of the content associated with the persistent browsing context correspond to the first one or more states of the content associated with the persistent browsing context. [0012] 12. System according to claim 9, characterized in that the network computing component (107) is further operable to: obtain a request for a subsequent persistent browsing context by a third client computing device (102 ); and providing third processing results to the third client computing device (102), wherein the third processing results correspond to third representations of content requested by the third client computing device (102), and wherein the third client computing device client computing (102) is configured to display third representations of the content requested by the third client computing device (102). [0013] 13. System according to claim 12, characterized in that the network computing component (107) is still operable to duplicate the persistent browsing context to generate the subsequent persistent browsing context. [0014] 14. System according to claim 13, characterized in that user interactions with representations of content associated with the subsequent persistent browsing context do not modify the persistent browsing context. [0015] 15. System according to claim 12, characterized in that the persistent browsing context and the persistent browsing context are associated with shared browser configuration information. [0016] 16. The system of claim 12, wherein the third client computing device (102) comprises at least one of the first client computing device (102) and the second client computing device (102 ).
类似技术:
公开号 | 公开日 | 专利标题 BR112014006589B1|2021-07-20|COMPUTER IMPLEMENTED METHOD FOR REMOTE SESSION NAVIGATION AND REMOTE SESSION NAVIGATION SYSTEM US9253284B2|2016-02-02|Historical browsing session management CN103782294B|2020-06-23|Remote browsing session management US8849802B2|2014-09-30|Historical browsing session management US8706860B2|2014-04-22|Remote browsing session management US9646254B2|2017-05-09|Predicting next web pages US20130080576A1|2013-03-28|Historical browsing session management US20130080577A1|2013-03-28|Historical browsing session management US20130007241A1|2013-01-03|Remote browsing session management US9152970B1|2015-10-06|Remote co-browsing session management AU2016202333B2|2018-01-18|Historical browsing session management US10296558B1|2019-05-21|Remote generation of composite content pages US10057320B2|2018-08-21|Offline browsing session management US9383958B1|2016-07-05|Remote co-browsing session management US9178955B1|2015-11-03|Managing network based content
同族专利:
公开号 | 公开日 WO2013032857A1|2013-03-07| RU2589306C2|2016-07-10| JP2016146206A|2016-08-12| AU2012300408C1|2016-10-27| CA2846389C|2017-01-10| US20130054675A1|2013-02-28| US20160080467A1|2016-03-17| RU2014111494A|2015-10-10| CA2846389A1|2013-03-07| AU2012300408B2|2016-01-14| JP5920903B2|2016-05-18| AU2012300408A1|2014-04-10| US10063618B2|2018-08-28| EP2748725A1|2014-07-02| EP2748725B1|2019-12-18| CN103959285A|2014-07-30| JP2014527676A|2014-10-16| BR112014006589A2|2018-09-18| SG2014012603A|2014-05-29| US9195768B2|2015-11-24| JP6272933B2|2018-01-31|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题 CA2154951C|1994-09-12|2004-05-25|John E. Warnock|Method and apparatus for viewing electronic documents| US5872850A|1996-02-02|1999-02-16|Microsoft Corporation|System for enabling information marketplace| US5727159A|1996-04-10|1998-03-10|Kikinis; Dan|System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers| US6108637A|1996-09-03|2000-08-22|Nielsen Media Research, Inc.|Content display monitor| US6049812A|1996-11-18|2000-04-11|International Business Machines Corp.|Browser and plural active URL manager for network computers| US5961593A|1997-01-22|1999-10-05|Lucent Technologies, Inc.|System and method for providing anonymous personalized browsing by a proxy system in a network| WO1999028842A1|1997-11-28|1999-06-10|International Business Machines Corporation|Processing extended transactions in a client-server system| US6195679B1|1998-01-06|2001-02-27|Netscape Communications Corporation|Browsing session recording playback and editing system for generating user defined paths and allowing users to mark the priority of items in the paths| US6182133B1|1998-02-06|2001-01-30|Microsoft Corporation|Method and apparatus for display of information prefetching and cache status having variable visual indication based on a period of time since prefetching| US6363421B2|1998-05-31|2002-03-26|Lucent Technologies, Inc.|Method for computer internet remote management of a telecommunication network element| JP3665480B2|1998-06-24|2005-06-29|富士通株式会社|Document organizing apparatus and method| US6249801B1|1998-07-15|2001-06-19|Radware Ltd.|Load balancing| US6138156A|1998-10-05|2000-10-24|International Business Machines Corporation|Selecting and applying content-reducing filters based on dynamic environmental factors| US6397253B1|1998-10-06|2002-05-28|Bull Hn Information Systems Inc.|Method and system for providing high performance Web browser and server communications| US6449639B1|1998-12-23|2002-09-10|Doxio, Inc.|Method and system for client-less viewing of scalable documents displayed using internet imaging protocol commands| EP1018689A3|1999-01-08|2001-01-24|Lucent Technologies Inc.|Methods and apparatus for enabling shared web-based interaction in stateful servers| US6625624B1|1999-02-03|2003-09-23|At&T Corp.|Information access system and method for archiving web pages| US6963850B1|1999-04-09|2005-11-08|Amazon.Com, Inc.|Computer services for assisting users in locating and evaluating items in an electronic catalog based on actions performed by members of specific user communities| US6560620B1|1999-08-03|2003-05-06|Aplix Research, Inc.|Hierarchical document comparison system and method| US6430624B1|1999-10-21|2002-08-06|Air2Web, Inc.|Intelligent harvesting and navigation system and method| US7096417B1|1999-10-22|2006-08-22|International Business Machines Corporation|System, method and computer program product for publishing interactive web content as a statically linked web hierarchy| US6549941B1|1999-11-22|2003-04-15|Alexa Internet|Software system and methods for resubmitting form data to related web sites| US7031932B1|1999-11-22|2006-04-18|Aquantive, Inc.|Dynamically optimizing the presentation of advertising messages| US6785864B1|1999-12-01|2004-08-31|International Business Machines Corporation|System and method for notifying of changes in web page hyperlinked documents| US7054952B1|1999-12-09|2006-05-30|International Business Machines Corp.|Electronic document delivery system employing distributed document object model based transcoding and providing interactive javascript support| US6691163B1|1999-12-23|2004-02-10|Alexa Internet|Use of web usage trail data to identify related links| US6654784B1|2000-01-14|2003-11-25|Nexaweb Technologies, Inc|Computing architecture| US20010037359A1|2000-02-04|2001-11-01|Mockett Gregory P.|System and method for a server-side browser including markup language graphical user interface, dynamic markup language rewriter engine and profile engine| US6728763B1|2000-03-09|2004-04-27|Ben W. Chen|Adaptive media streaming server for playing live and streaming media content on demand through web client's browser with no additional software or plug-ins| US7577754B2|2000-04-28|2009-08-18|Adara Networks, Inc.|System and method for controlling access to content carried in a caching architecture| AU4465301A|2000-03-31|2001-10-08|Kyocera Communication Systems, Co., Ltd.|Content server device| US20010039490A1|2000-04-03|2001-11-08|Mikhail Verbitsky|System and method of analyzing and comparing entity documents| US7509397B1|2000-04-06|2009-03-24|Yahoo! Inc.|Web portholes: using web proxies to capture and enhance display real estate| US6912689B1|2000-04-17|2005-06-28|Micron Technology, Inc.|Method and apparatus for facilitating substitution of digital images with line drawings| US7373313B1|2000-04-25|2008-05-13|Alexa Internet|Service for enabling users to share information regarding products represented on web pages| US6678700B1|2000-04-27|2004-01-13|General Atomics|System of and method for transparent management of data objects in containers across distributed heterogenous resources| US20070118803A1|2000-05-08|2007-05-24|Walker Jay S|Products and processes for providing one or more links in an electronic file that is presented to a user| US7082476B1|2000-05-24|2006-07-25|Cisco Technology, Inc.|System and method of optimizing retrieval of network resources by identifying and substituting embedded symbolic host name references with network addresses in accordance with substitution policies| US7210099B2|2000-06-12|2007-04-24|Softview Llc|Resolution independent vector display of internet content| WO2002003219A1|2000-06-30|2002-01-10|Plurimus Corporation|Method and system for monitoring online computer network behavior and creating online behavior profiles| US6859217B2|2000-07-19|2005-02-22|Microsoft Corporation|System and method to display and manage data within hierarchies and polyarchies of information| US20070027672A1|2000-07-31|2007-02-01|Michel Decary|Computer method and apparatus for extracting data from web pages| US6704024B2|2000-08-07|2004-03-09|Zframe, Inc.|Visual content browsing using rasterized representations| JP2002091851A|2000-09-12|2002-03-29|Toshiba Corp|Information providing method and repeating server device| US7191211B2|2000-10-03|2007-03-13|Raja Tuli|Portable high speed internet access device priority protocol| US6871213B1|2000-10-11|2005-03-22|Kana Software, Inc.|System and method for web co-navigation with dynamic content including incorporation of business rule into web document| US7051084B1|2000-11-02|2006-05-23|Citrix Systems, Inc.|Methods and apparatus for regenerating and transmitting a partial page| US7483983B1|2000-11-13|2009-01-27|Telecommunication Systems, Inc.|Method and system for deploying content to wireless devices| US6871236B2|2001-01-26|2005-03-22|Microsoft Corporation|Caching transformed content in a mobile gateway| US7003726B2|2001-02-21|2006-02-21|Nanonation Incorporated|Computer network having context sensitive and interactive multimedia applications and controls, forming dynamic user interfaces on local computer terminals| US7085736B2|2001-02-27|2006-08-01|Alexa Internet|Rules-based identification of items represented on web pages| US20040110490A1|2001-12-20|2004-06-10|Steele Jay D.|Method and apparatus for providing content to media devices| US7792948B2|2001-03-30|2010-09-07|Bmc Software, Inc.|Method and system for collecting, aggregating and viewing performance data on a site-wide basis| WO2002082229A2|2001-04-09|2002-10-17|America Online Incorporated|Server-based browser system| US7047294B2|2001-05-02|2006-05-16|Microsoft Corporation|Page-view recording with click-thru tracking| US7353252B1|2001-05-16|2008-04-01|Sigma Design|System for electronic file collaboration among multiple users using peer-to-peer network topology| US6931439B1|2001-05-23|2005-08-16|Western Digital Ventures, Inc.|Modifying web page links for display on a mobile terminal to indicate the cache status of linked web pages| US20030014478A1|2001-06-29|2003-01-16|Noble Alan C.|Dynamically distributed client-server web browser| US7284191B2|2001-08-13|2007-10-16|Xerox Corporation|Meta-document management system with document identifiers| US6944665B2|2001-09-24|2005-09-13|International Business Machines Corporation|Method and system for delivering accessibility using a distributed environment| US9167036B2|2002-02-14|2015-10-20|Level 3 Communications, Llc|Managed object replication and delivery| US7260773B2|2002-03-28|2007-08-21|Uri Zernik|Device system and method for determining document similarities and differences| US20030195963A1|2002-04-10|2003-10-16|Yu Song|Session preservation and migration among different browsers on different devices| US20050246193A1|2002-08-30|2005-11-03|Navio Systems, Inc.|Methods and apparatus for enabling transaction relating to digital assets| US7287054B2|2002-05-31|2007-10-23|Microsoft Corporation|Systems and methods for shared browsing among a plurality of online co-users| US20040010543A1|2002-07-15|2004-01-15|Steven Grobman|Cached resource validation without source server contact during validation| US7624047B1|2002-07-31|2009-11-24|Amazon Technologies, Inc.|Managing server load by varying responses to requests for dynamically-generated web pages| US20040049673A1|2002-09-05|2004-03-11|Docomo Communications Laboratories Usa, Inc.|Apparatus and method for a personal cookie repository service for cookie management among multiple devices| CA2402809A1|2002-09-11|2004-03-11|Ibm Canada Limited-Ibm Canada Limitee|Ubiquitous visited links| US7171478B2|2002-10-25|2007-01-30|Sap Aktiengesellschaft|Session coupling| US8176428B2|2002-12-03|2012-05-08|Datawind Net Access Corporation|Portable internet access device back page cache| JP2004193979A|2002-12-11|2004-07-08|Canon Inc|Video distribution system| US20050278698A1|2003-02-03|2005-12-15|John Verco|Multi-window based graphical user interface for web applications| JP2004272662A|2003-03-10|2004-09-30|Ricoh Co Ltd|Device, system, and method for managing contents, program for making computer execute the same method, recording medium, and contents data| US7406459B2|2003-05-01|2008-07-29|Microsoft Corporation|Concept network| JP2004355371A|2003-05-29|2004-12-16|Canon Inc|Document classifying device, its method, and storage medium| GB0314782D0|2003-06-25|2003-07-30|Ibm|A searchable personal browsing history| WO2005003998A1|2003-06-30|2005-01-13|International Business Machines Corporation Ibm|A method and system for improving presentation of html pages in web devices| US20050060643A1|2003-08-25|2005-03-17|Miavia, Inc.|Document similarity detection and classification system| US8103742B1|2003-11-24|2012-01-24|Amazon Technologies, Inc.|Deferred and off-loaded rendering of selected portions of web pages to incorporate late-arriving service data| US7523315B2|2003-12-22|2009-04-21|Ingeo Systems, Llc|Method and process for creating an electronically signed document| US8150824B2|2003-12-31|2012-04-03|Google Inc.|Systems and methods for direct navigation to specific portion of target document| JP2005202766A|2004-01-16|2005-07-28|National Institute Of Information & Communication Technology|System for simultaneous presentation of similar content| US20050218739A1|2004-04-01|2005-10-06|Microsoft Corporation|System and method for sharing objects between computers over a network| US7603426B2|2004-06-18|2009-10-13|Microsoft Corporation|Flexible context management for enumeration sessions using context exchange| US8224964B1|2004-06-30|2012-07-17|Google Inc.|System and method of accessing a document efficiently through multi-tier web caching| US7810035B2|2004-10-15|2010-10-05|Microsoft Corporation|Browsing web content using predictive navigation links| US7689458B2|2004-10-29|2010-03-30|Microsoft Corporation|Systems and methods for determining bid value for content items to be placed on a rendered page| US20060122889A1|2004-11-22|2006-06-08|Microsoft Corporation|System and method for managing a plurality of content items displayed in a particular placement position on a rendered page| US8302011B2|2005-01-24|2012-10-30|A9.Com, Inc.|Technique for modifying presentation of information displayed to end users of a computer system| US7975000B2|2005-01-27|2011-07-05|Fmr Llc|A/B testing of a webpage| US8019749B2|2005-03-17|2011-09-13|Roy Leban|System, method, and user interface for organizing and searching information| US8060463B1|2005-03-30|2011-11-15|Amazon Technologies, Inc.|Mining of user event data to identify users with common interests| JP4515319B2|2005-04-27|2010-07-28|株式会社日立製作所|Computer system| US7536641B2|2005-04-29|2009-05-19|Google Inc.|Web page authoring tool for structured documents| JP2006318308A|2005-05-13|2006-11-24|Epson Avasys Corp|Electronic document distribution server and electronic document distribution system| US20060265472A1|2005-05-17|2006-11-23|Yahoo! Inc.|Systems and methods for providing short message service features and user interfaces therefor in network browsing applications| US20060277167A1|2005-05-20|2006-12-07|William Gross|Search apparatus having a search result matrix display| US8447876B2|2005-06-02|2013-05-21|Thomson Licensing|Content timing method and system| JP2007011778A|2005-06-30|2007-01-18|Microsoft Corp|Information retrieval display method and computer readable recording medium| US7403932B2|2005-07-01|2008-07-22|The Boeing Company|Text differentiation methods, systems, and computer program products for content analysis| JP2005346734A|2005-07-25|2005-12-15|Flex-Firm Inc|Method of providing content| US7831582B1|2005-08-23|2010-11-09|Amazon Technologies, Inc.|Method and system for associating keywords with online content sources| US7814410B2|2005-09-12|2010-10-12|Workman Nydegger|Initial server-side content rendering for client-script web pages| US7577665B2|2005-09-14|2009-08-18|Jumptap, Inc.|User characteristic influenced search results| US8161044B2|2005-10-26|2012-04-17|International Business Machines Corporation|Faceted web searches of user preferred categories throughout one or more taxonomies| US8001215B2|2005-11-29|2011-08-16|Microsoft Corporation|Unlimited history store for navigational web applications| US7961188B2|2005-12-05|2011-06-14|Microsoft Corporation|Persistent formatting for interactive charts| KR100754196B1|2005-12-10|2007-09-03|삼성전자주식회사|Method for switching media renderer in the middle of streaming playback of content| US8935429B2|2006-12-19|2015-01-13|Vmware, Inc.|Automatically determining which remote applications a user or group is entitled to access based on entitlement specifications and providing remote application access to the remote applications| US20070139430A1|2005-12-21|2007-06-21|Microsoft Corporation|Rendering "gadgets" with a browser| US20070168535A1|2005-12-22|2007-07-19|Ilmo Ikonen|System and method for data communication between devices| US9081981B2|2005-12-29|2015-07-14|Nextlabs, Inc.|Techniques and system to manage access of information using policies| US7792944B2|2006-03-31|2010-09-07|Amazon Technologies, Inc.|Executing programs based on user-specified constraints| US8190682B2|2006-03-31|2012-05-29|Amazon Technologies, Inc.|Managing execution of programs by multiple computing systems| JP2007280011A|2006-04-06|2007-10-25|Nippon Telegr & Teleph Corp <Ntt>|Method and apparatus for presenting web page browse history| US8001487B2|2006-04-12|2011-08-16|Laas & Sonder Pty Ltd|Method and system for organizing and displaying data| RU2320002C2|2006-04-18|2008-03-20|Общество с ограниченной ответственностью "Юникор микросистемы"|Method for switching context of tasks and procedures in a processor| US8527905B2|2006-06-07|2013-09-03|International Business Machines Corporsation|Providing archived web page content in place of current web page content| US7610382B1|2006-06-30|2009-10-27|Amazon Technologies, Inc.|System and method for marking content| US20080104502A1|2006-10-26|2008-05-01|Yahoo! Inc.|System and method for providing a change profile of a web page| US8073850B1|2007-01-19|2011-12-06|Wordnetworks, Inc.|Selecting key phrases for serving contextually relevant content| WO2008092131A2|2007-01-25|2008-07-31|Skyfire Labs, Inc.|Mobile device user interface for remote interaction| US7593928B2|2007-01-29|2009-09-22|Aol Llc|Dynamically altering search result page layout to increase user response| US8250474B2|2007-03-31|2012-08-21|Topix Llc|Chronology display and feature for online presentations and web pages| IL182702D0|2007-04-19|2007-09-20|90 Yitshak Barashi|Method for changing visual modes of documents stored over a data network| US8370424B2|2007-06-22|2013-02-05|Aol Inc.|Systems and methods for caching and serving dynamic content| US7831596B2|2007-07-02|2010-11-09|Hewlett-Packard Development Company, L.P.|Systems and processes for evaluating webpages| US8185621B2|2007-09-17|2012-05-22|Kasha John R|Systems and methods for monitoring webpages| JP5194673B2|2007-09-26|2013-05-08|株式会社日立製作所|Mobile terminal and information transmission / reception method| US8271836B2|2007-09-27|2012-09-18|Microsoft Corporation|Capturing diagnostics in web browser applications| US8209378B2|2007-10-04|2012-06-26|Clearspring Technologies, Inc.|Methods and apparatus for widget sharing between content aggregation points| US8010901B1|2007-10-26|2011-08-30|Sesh, Inc.|System and method for automated synchronized co-browsing| US20100312788A1|2007-10-26|2010-12-09|Commonwealth Scientific And Industrial Research Or|Method and system for information retrieval and processing| US8775391B2|2008-03-26|2014-07-08|Zettics, Inc.|System and method for sharing anonymous user profiles with a third party| US20090158141A1|2007-12-18|2009-06-18|Frederic Bauchot|Method and system to secure the display of a particular element of a markup file| US8849914B2|2007-12-20|2014-09-30|The Vanguard Group, Inc.|System and method for synchronized co-browsing by users in different web sessions| US8473836B2|2007-12-21|2013-06-25|The Invention Science Fund I, Llc|Look ahead of links/alter links| US7664862B2|2008-01-14|2010-02-16|International Business Machines Corporation|Browser-based proxy server for customization and distribution of existing applications| US10269024B2|2008-02-08|2019-04-23|Outbrain Inc.|Systems and methods for identifying and measuring trends in consumer content demand within vertically associated websites and related content| JP5137641B2|2008-03-19|2013-02-06|キヤノン株式会社|Information processing apparatus, image processing system, image processing method, and program| GB0805695D0|2008-03-28|2008-04-30|British Telecomm|Web content management| US8112431B2|2008-04-03|2012-02-07|Ebay Inc.|Method and system for processing search requests| US20090254867A1|2008-04-03|2009-10-08|Microsoft Corporation|Zoom for annotatable margins| US8886637B2|2008-05-12|2014-11-11|Enpulz, L.L.C.|Web browser accessible search engine which adapts based on user interaction| US8078974B2|2008-06-27|2011-12-13|Microsoft Corporation|Relating web page change with revisitation patterns| US7925782B2|2008-06-30|2011-04-12|Amazon Technologies, Inc.|Request routing using network computing components| US8271887B2|2008-07-17|2012-09-18|The Boeing Company|Systems and methods for whiteboard collaboration and annotation| US8010545B2|2008-08-28|2011-08-30|Palo Alto Research Center Incorporated|System and method for providing a topic-directed search| US20100057639A1|2008-08-30|2010-03-04|Yahoo! Inc.|System and method for utilizing time measurements in advertising pricing| US20100082747A1|2008-09-29|2010-04-01|College Of William & Mary|Real-time collaborative browsing| US8316124B1|2008-09-29|2012-11-20|Amazon Technologies, Inc.|Managing network data display| US20100125507A1|2008-11-17|2010-05-20|Escape Media Group, Inc.|Method and system for presenting sponsored content| JP2010123073A|2008-11-21|2010-06-03|Toshiba Corp|Page access method and server| US8249904B1|2008-12-12|2012-08-21|Amazon Technologies, Inc.|Managing use of program execution capacity| US8195767B2|2008-12-22|2012-06-05|Sap Ag|Method and software for reducing server requests by a browser| US8336049B2|2009-02-05|2012-12-18|Vmware, Inc.|Virtual machine utility computing method and system| TW201032131A|2009-02-24|2010-09-01|Ibm|Device, method and computer program product for automatically selecting internet browser and providing web page service| JP2010205111A|2009-03-05|2010-09-16|Nippon Telegr & Teleph Corp <Ntt>|System, and method for reproducing context, first terminal device, second terminal device, context obtaining device or storage device, program thereof| CN101847150A|2009-03-26|2010-09-29|北京搜狗科技发展有限公司|Browser status synchronization method and device| GB0905953D0|2009-04-06|2009-05-20|Bowling Anthony|Document editing method| US8661423B2|2009-05-01|2014-02-25|Telcordia Technologies, Inc.|Automated determination of quasi-identifiers using program analysis| US9170700B2|2009-05-13|2015-10-27|David H. Kaiser|Playing and editing linked and annotated audiovisual works| US9330191B2|2009-06-15|2016-05-03|Microsoft Technology Licensing, Llc|Identifying changes for online documents| CN103488681A|2009-06-19|2014-01-01|布雷克公司|Slash label| US9213780B2|2009-06-26|2015-12-15|Microsoft Technology Licensing Llc|Cache and index refreshing strategies for variably dynamic items and accesses| KR20110011002A|2009-07-27|2011-02-08|삼성전자주식회사|Method and apparatus for web browsing| US8335784B2|2009-08-31|2012-12-18|Microsoft Corporation|Visual search and three-dimensional results| US8745039B2|2009-09-25|2014-06-03|International Business Machines Corporation|Method and system for user guided search navigation| US8689225B2|2009-09-29|2014-04-01|Amazon Technologies, Inc.|Attributing causality to program execution capacity modifications| US8438312B2|2009-10-23|2013-05-07|Moov Corporation|Dynamically rehosting web content| US20110119352A1|2009-11-16|2011-05-19|Parrotview, Inc.|Method of mutual browsing and computer program therefor| US8375316B2|2009-12-31|2013-02-12|Verizon Patent And Licensing Inc.|Navigational transparent overlay| US20110173177A1|2010-01-11|2011-07-14|Flavio Junqueira|Sightful cache: efficient invalidation for search engine caching| US8924982B2|2010-01-12|2014-12-30|Amazon Technologies, Inc.|Managing private use of program execution capacity| US8875038B2|2010-01-19|2014-10-28|Collarity, Inc.|Anchoring for content synchronization| US20110178868A1|2010-01-21|2011-07-21|Priyank Shanker Garg|Enhancing search result pages using content licensed from content providers| US8782145B2|2010-01-28|2014-07-15|Microsoft Corporation|Following content item updates via chat groups| US20110191327A1|2010-01-31|2011-08-04|Advanced Research Llc|Method for Human Ranking of Search Results| US9514103B2|2010-02-05|2016-12-06|Palo Alto Research Center Incorporated|Effective system and method for visual document comparison using localized two-dimensional visual fingerprints| US20110208822A1|2010-02-22|2011-08-25|Yogesh Chunilal Rathod|Method and system for customized, contextual, dynamic and unified communication, zero click advertisement and prospective customers search engine| US9369437B2|2010-04-01|2016-06-14|Cloudflare, Inc.|Internet-based proxy service to modify internet responses| US8555155B2|2010-06-04|2013-10-08|Apple Inc.|Reader mode presentation of web content| US20120054316A1|2010-09-01|2012-03-01|Canon Kabushiki Kaisha|Tcp multiplexing over a proxy| US20120084644A1|2010-09-30|2012-04-05|Julien Robert|Content preview| WO2012044539A2|2010-10-01|2012-04-05|Imerj, Llc|Multi-operating system| US8549138B2|2010-10-01|2013-10-01|Microsoft Corporation|Web test generation| US20120137201A1|2010-11-30|2012-05-31|Alcatel-Lucent Usa Inc.|Enabling predictive web browsing| US20120166922A1|2010-12-28|2012-06-28|Franklin Keith Rolles|Content Management System for Resume and Portfolio Data for Producing Multiple Interactive Websites| US9367635B2|2011-02-12|2016-06-14|International Business Machines Corporation|Contact center co-browsing for a mobile device| US8667139B2|2011-02-22|2014-03-04|Intuit Inc.|Multidimensional modeling of software offerings| US9009218B2|2011-02-23|2015-04-14|Broadcom Corporation|Cloud server/thin client/gateway selective browser instantiation| US9225763B2|2011-06-07|2015-12-29|Cisco Technology, Inc.|Distributed overlay browser for transparent streaming media support in virtualized desktop environment| US8769011B2|2011-06-21|2014-07-01|Cisco Technology, Inc.|Survivable browsing in virtualized desktop environment when host connectivity is lost| US8706860B2|2011-06-30|2014-04-22|Amazon Technologies, Inc.|Remote browsing session management| US8577963B2|2011-06-30|2013-11-05|Amazon Technologies, Inc.|Remote browsing session between client browser and network based browser| WO2013003631A2|2011-06-30|2013-01-03|Amazon Technologies, Inc.|Remote browsing session management| US8799412B2|2011-06-30|2014-08-05|Amazon Technologies, Inc.|Remote browsing session management| CN102902693B|2011-07-29|2018-01-12|慧与发展有限责任合伙企业|Detect the repeat pattern on webpage| US9195768B2|2011-08-26|2015-11-24|Amazon Technologies, Inc.|Remote browsing session management| US8843608B2|2011-09-22|2014-09-23|Blue Coat Systems, Inc.|Methods and systems for caching popular network content| US8914514B1|2011-09-27|2014-12-16|Amazon Technologies, Inc.|Managing network based content|US10002189B2|2007-12-20|2018-06-19|Apple Inc.|Method and apparatus for searching using an active ontology| US9330720B2|2008-01-03|2016-05-03|Apple Inc.|Methods and apparatus for altering audio output signals| US8321568B2|2008-03-31|2012-11-27|Amazon Technologies, Inc.|Content management| US7962597B2|2008-03-31|2011-06-14|Amazon Technologies, Inc.|Request routing based on class| US8533293B1|2008-03-31|2013-09-10|Amazon Technologies, Inc.|Client side cache management| US8601090B1|2008-03-31|2013-12-03|Amazon Technologies, Inc.|Network resource identification| US8447831B1|2008-03-31|2013-05-21|Amazon Technologies, Inc.|Incentive driven content delivery| US7970820B1|2008-03-31|2011-06-28|Amazon Technologies, Inc.|Locality based content distribution| US8606996B2|2008-03-31|2013-12-10|Amazon Technologies, Inc.|Cache optimization| US9912740B2|2008-06-30|2018-03-06|Amazon Technologies, Inc.|Latency measurement in resource requests| US20100030549A1|2008-07-31|2010-02-04|Lee Michael M|Mobile device having human language translation capability with positional feedback| US8676904B2|2008-10-02|2014-03-18|Apple Inc.|Electronic devices with voice command and contextual data processing capabilities| US7991910B2|2008-11-17|2011-08-02|Amazon Technologies, Inc.|Updating routing information based on client location| US8073940B1|2008-11-17|2011-12-06|Amazon Technologies, Inc.|Managing content delivery network service providers| US8028090B2|2008-11-17|2011-09-27|Amazon Technologies, Inc.|Request routing utilizing client location information| US8122098B1|2008-11-17|2012-02-21|Amazon Technologies, Inc.|Managing content delivery network service providers by a content broker| US8756341B1|2009-03-27|2014-06-17|Amazon Technologies, Inc.|Request routing utilizing popularity information| US8412823B1|2009-03-27|2013-04-02|Amazon Technologies, Inc.|Managing tracking information entries in resource cache components| US8688837B1|2009-03-27|2014-04-01|Amazon Technologies, Inc.|Dynamically translating resource identifiers for request routing using popularity information| US8782236B1|2009-06-16|2014-07-15|Amazon Technologies, Inc.|Managing resources using resource expiration data| US8397073B1|2009-09-04|2013-03-12|Amazon Technologies, Inc.|Managing secure content in a content delivery network| US8433771B1|2009-10-02|2013-04-30|Amazon Technologies, Inc.|Distribution network with forward resource propagation| US10276170B2|2010-01-18|2019-04-30|Apple Inc.|Intelligent automated assistant| US9495338B1|2010-01-28|2016-11-15|Amazon Technologies, Inc.|Content distribution network| US8682667B2|2010-02-25|2014-03-25|Apple Inc.|User profiling for selecting user specific voice input processing information| US10097398B1|2010-09-28|2018-10-09|Amazon Technologies, Inc.|Point of presence management in request routing| US9407681B1|2010-09-28|2016-08-02|Amazon Technologies, Inc.|Latency measurement in resource requests| US8468247B1|2010-09-28|2013-06-18|Amazon Technologies, Inc.|Point of presence management in request routing| US9003035B1|2010-09-28|2015-04-07|Amazon Technologies, Inc.|Point of presence management in request routing| US10958501B1|2010-09-28|2021-03-23|Amazon Technologies, Inc.|Request routing information based on client IP groupings| US9712484B1|2010-09-28|2017-07-18|Amazon Technologies, Inc.|Managing request routing information utilizing client identifiers| US8452874B2|2010-11-22|2013-05-28|Amazon Technologies, Inc.|Request routing processing| US9262612B2|2011-03-21|2016-02-16|Apple Inc.|Device access using voice authentication| US10255566B2|2011-06-03|2019-04-09|Apple Inc.|Generating and processing task items that represent tasks to perform| US9195768B2|2011-08-26|2015-11-24|Amazon Technologies, Inc.|Remote browsing session management| US9727643B2|2011-11-30|2017-08-08|Red Hat, Inc.|Managing loading of web pages| JP5496173B2|2011-12-14|2014-05-21|富士フイルム株式会社|Server apparatus, browsing system, distribution method, and program| US10165036B1|2011-12-21|2018-12-25|Amazon Technologies, Inc.|Network resource remote process execution| US10134385B2|2012-03-02|2018-11-20|Apple Inc.|Systems and methods for name pronunciation| US10623408B1|2012-04-02|2020-04-14|Amazon Technologies, Inc.|Context sensitive object management| JP5870840B2|2012-05-14|2016-03-01|ソニー株式会社|Information processing apparatus, information processing method, and information processing program| US10417037B2|2012-05-15|2019-09-17|Apple Inc.|Systems and methods for integrating third party services with a digital assistant| US20130317808A1|2012-05-24|2013-11-28|About, Inc.|System for and method of analyzing and responding to user generated content| US9721563B2|2012-06-08|2017-08-01|Apple Inc.|Name recognition system| US9154551B1|2012-06-11|2015-10-06|Amazon Technologies, Inc.|Processing DNS queries to identify pre-processing information| US9323577B2|2012-09-20|2016-04-26|Amazon Technologies, Inc.|Automated profiling of resource usage| US10205698B1|2012-12-19|2019-02-12|Amazon Technologies, Inc.|Source-dependent address resolution| CN113470640A|2013-02-07|2021-10-01|苹果公司|Voice trigger of digital assistant| US9112827B2|2013-03-15|2015-08-18|Amazon Technologies, Inc.|Determining appropriate browsing applications for selected network resources| US9317677B1|2013-05-24|2016-04-19|Inkling Systems, Inc.|Access control for content delivery networks| US9294391B1|2013-06-04|2016-03-22|Amazon Technologies, Inc.|Managing network computing components utilizing request routing| WO2014197335A1|2013-06-08|2014-12-11|Apple Inc.|Interpreting and acting upon commands that involve sharing information with remote devices| EP3008641A1|2013-06-09|2016-04-20|Apple Inc.|Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant| US10176167B2|2013-06-09|2019-01-08|Apple Inc.|System and method for inferring user intent from speech inputs| US10218633B2|2014-03-28|2019-02-26|Amazon Technologies, Inc.|Implementation of a service that coordinates the placement and execution of containers| US10170123B2|2014-05-30|2019-01-01|Apple Inc.|Intelligent assistant for home automation| US9633004B2|2014-05-30|2017-04-25|Apple Inc.|Better resolution when referencing to concepts| US9715875B2|2014-05-30|2017-07-25|Apple Inc.|Reducing the need for manual start/end-pointing and trigger phrases| WO2015184186A1|2014-05-30|2015-12-03|Apple Inc.|Multi-command single utterance input method| US9430463B2|2014-05-30|2016-08-30|Apple Inc.|Exemplar-based natural language processing| US9646104B1|2014-06-23|2017-05-09|Amazon Technologies, Inc.|User tracking based on client-side browse history| US9712520B1|2015-06-23|2017-07-18|Amazon Technologies, Inc.|User authentication using client-side browse history| US9818400B2|2014-09-11|2017-11-14|Apple Inc.|Method and apparatus for discovering trending terms in speech requests| US10127911B2|2014-09-30|2018-11-13|Apple Inc.|Speaker identification and unsupervised speaker adaptation techniques| US9668121B2|2014-09-30|2017-05-30|Apple Inc.|Social reminders| US10074360B2|2014-09-30|2018-09-11|Apple Inc.|Providing an indication of the suitability of speech recognition| US10033627B1|2014-12-18|2018-07-24|Amazon Technologies, Inc.|Routing mode and point-of-presence selection service| US10097448B1|2014-12-18|2018-10-09|Amazon Technologies, Inc.|Routing mode and point-of-presence selection service| US10091096B1|2014-12-18|2018-10-02|Amazon Technologies, Inc.|Routing mode and point-of-presence selection service| US10152299B2|2015-03-06|2018-12-11|Apple Inc.|Reducing response latency of intelligent automated assistants| US9886953B2|2015-03-08|2018-02-06|Apple Inc.|Virtual assistant activation| US9721566B2|2015-03-08|2017-08-01|Apple Inc.|Competing devices responding to voice triggers| US10567477B2|2015-03-08|2020-02-18|Apple Inc.|Virtual assistant continuity| US10225326B1|2015-03-23|2019-03-05|Amazon Technologies, Inc.|Point of presence based data uploading| IL237986D0|2015-03-26|2015-11-30|Yaron Peretz|Method and system for broadcasting browsing sessions| US9819567B1|2015-03-30|2017-11-14|Amazon Technologies, Inc.|Traffic surge management for points of presence| US9832141B1|2015-05-13|2017-11-28|Amazon Technologies, Inc.|Routing based request correlation| US10200824B2|2015-05-27|2019-02-05|Apple Inc.|Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device| US10083688B2|2015-05-27|2018-09-25|Apple Inc.|Device voice control for selecting a displayed affordance| US9578173B2|2015-06-05|2017-02-21|Apple Inc.|Virtual assistant aided communication with 3rd party service in a communication session| US11025565B2|2015-06-07|2021-06-01|Apple Inc.|Personalized prediction of responses for instant messaging| US10290022B1|2015-06-23|2019-05-14|Amazon Technologies, Inc.|Targeting content based on user characteristics| US10182046B1|2015-06-23|2019-01-15|Amazon Technologies, Inc.|Detecting a network crawler| US10616179B1|2015-06-25|2020-04-07|Amazon Technologies, Inc.|Selective routing of domain name systemrequests| US20160378747A1|2015-06-29|2016-12-29|Apple Inc.|Virtual assistant for media playback| US10097566B1|2015-07-31|2018-10-09|Amazon Technologies, Inc.|Identifying targets of network attacks| US10747498B2|2015-09-08|2020-08-18|Apple Inc.|Zero latency digital assistant| US9774619B1|2015-09-24|2017-09-26|Amazon Technologies, Inc.|Mitigating network attacks| WO2017077847A1|2015-11-02|2017-05-11|日本電信電話株式会社|Analysis device, analysis method, and analysis program| US10956666B2|2015-11-09|2021-03-23|Apple Inc.|Unconventional virtual assistant interactions| US10270878B1|2015-11-10|2019-04-23|Amazon Technologies, Inc.|Routing for origin-facing points of presence| US10049668B2|2015-12-02|2018-08-14|Apple Inc.|Applying neural network language models to weighted finite state transducers for automatic speech recognition| US10049051B1|2015-12-11|2018-08-14|Amazon Technologies, Inc.|Reserved cache space in content delivery networks| US10257307B1|2015-12-11|2019-04-09|Amazon Technologies, Inc.|Reserved cache space in content delivery networks| US10348639B2|2015-12-18|2019-07-09|Amazon Technologies, Inc.|Use of virtual endpoints to improve data transmission rates| US10223066B2|2015-12-23|2019-03-05|Apple Inc.|Proactive assistance based on dialog communication between devices| CN105786977B|2016-02-05|2020-03-03|北京百度网讯科技有限公司|Mobile search method and device based on artificial intelligence| US11227589B2|2016-06-06|2022-01-18|Apple Inc.|Intelligent list reading| US10075551B1|2016-06-06|2018-09-11|Amazon Technologies, Inc.|Request management for hierarchical cache| US10049663B2|2016-06-08|2018-08-14|Apple, Inc.|Intelligent automated assistant for media exploration| US10586535B2|2016-06-10|2020-03-10|Apple Inc.|Intelligent digital assistant in a multi-tasking environment| DK201670540A1|2016-06-11|2018-01-08|Apple Inc|Application integration with a digital assistant| DK179415B1|2016-06-11|2018-06-14|Apple Inc|Intelligent device arbitration and control| US10110694B1|2016-06-29|2018-10-23|Amazon Technologies, Inc.|Adaptive transfer rate for retrieving content from a server| US9992086B1|2016-08-23|2018-06-05|Amazon Technologies, Inc.|External health checking of virtual private cloud network environments| US10033691B1|2016-08-24|2018-07-24|Amazon Technologies, Inc.|Adaptive resolution of domain name requests in virtual private cloud network environments| US10474753B2|2016-09-07|2019-11-12|Apple Inc.|Language identification using recurrent neural networks| US10043516B2|2016-09-23|2018-08-07|Apple Inc.|Intelligent automated assistant| US10469513B2|2016-10-05|2019-11-05|Amazon Technologies, Inc.|Encrypted network addresses| US10313359B2|2016-11-01|2019-06-04|Microsoft Technology Licensing, Llc|Protocols for accessing hosts| US10831549B1|2016-12-27|2020-11-10|Amazon Technologies, Inc.|Multi-region request-driven code execution system| US10372499B1|2016-12-27|2019-08-06|Amazon Technologies, Inc.|Efficient region selection system for executing request-driven code| US11204787B2|2017-01-09|2021-12-21|Apple Inc.|Application integration with a digital assistant| US10938884B1|2017-01-30|2021-03-02|Amazon Technologies, Inc.|Origin server cloaking using virtual private cloud network environments| US10503613B1|2017-04-21|2019-12-10|Amazon Technologies, Inc.|Efficient serving of resources during server unavailability| DK201770383A1|2017-05-09|2018-12-14|Apple Inc.|User interface for correcting recognition errors| US10417266B2|2017-05-09|2019-09-17|Apple Inc.|Context-aware ranking of intelligent response suggestions| US10726832B2|2017-05-11|2020-07-28|Apple Inc.|Maintaining privacy of personal information| US10395654B2|2017-05-11|2019-08-27|Apple Inc.|Text normalization based on a data-driven learning network| DK201770439A1|2017-05-11|2018-12-13|Apple Inc.|Offline personal assistant| DK179745B1|2017-05-12|2019-05-01|Apple Inc.|SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT| DK201770427A1|2017-05-12|2018-12-20|Apple Inc.|Low-latency intelligent automated assistant| DK179496B1|2017-05-12|2019-01-15|Apple Inc.|USER-SPECIFIC Acoustic Models| DK201770432A1|2017-05-15|2018-12-21|Apple Inc.|Hierarchical belief states for digital assistants| DK201770431A1|2017-05-15|2018-12-20|Apple Inc.|Optimizing dialogue policy decisions for digital assistants using implicit feedback| US10311144B2|2017-05-16|2019-06-04|Apple Inc.|Emoji word sense disambiguation| US10403278B2|2017-05-16|2019-09-03|Apple Inc.|Methods and systems for phonetic matching in digital assistant services| US20180336275A1|2017-05-16|2018-11-22|Apple Inc.|Intelligent automated assistant for media exploration| DK179549B1|2017-05-16|2019-02-12|Apple Inc.|Far-field extension for digital assistant services| US10657328B2|2017-06-02|2020-05-19|Apple Inc.|Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling| US11075987B1|2017-06-12|2021-07-27|Amazon Technologies, Inc.|Load estimating content delivery network| US10447648B2|2017-06-19|2019-10-15|Amazon Technologies, Inc.|Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP| CN107171947A|2017-06-30|2017-09-15|胡玥莹|A kind of browser instant communication information method of reseptance and system| US10445429B2|2017-09-21|2019-10-15|Apple Inc.|Natural language understanding using vocabularies with compressed serialized tries| US10755051B2|2017-09-29|2020-08-25|Apple Inc.|Rule-based natural language processing| JP2019086884A|2017-11-02|2019-06-06|ブラザー工業株式会社|Two-dimensional code generating program and two-dimensional code printing system| US10636424B2|2017-11-30|2020-04-28|Apple Inc.|Multi-turn canned dialog| US10733982B2|2018-01-08|2020-08-04|Apple Inc.|Multi-directional dialog| US10733375B2|2018-01-31|2020-08-04|Apple Inc.|Knowledge-based framework for improving natural language understanding| US10789959B2|2018-03-02|2020-09-29|Apple Inc.|Training speaker recognition models for digital assistants| US10592578B1|2018-03-07|2020-03-17|Amazon Technologies, Inc.|Predictive content push-enabled content delivery network| US10592604B2|2018-03-12|2020-03-17|Apple Inc.|Inverse text normalization for automatic speech recognition| US10818288B2|2018-03-26|2020-10-27|Apple Inc.|Natural assistant interaction| US10909331B2|2018-03-30|2021-02-02|Apple Inc.|Implicit identification of translation payload with neural machine translation| US11145294B2|2018-05-07|2021-10-12|Apple Inc.|Intelligent automated assistant for delivering content from user experiences| US10928918B2|2018-05-07|2021-02-23|Apple Inc.|Raise to speak| US10984780B2|2018-05-21|2021-04-20|Apple Inc.|Global semantic word embeddings using bi-directional recurrent neural networks| US10892996B2|2018-06-01|2021-01-12|Apple Inc.|Variable latency device coordination| DK180639B1|2018-06-01|2021-11-04|Apple Inc|DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT| DK179822B1|2018-06-01|2019-07-12|Apple Inc.|Voice interaction at a primary device to access call functionality of a companion device| US10496705B1|2018-06-03|2019-12-03|Apple Inc.|Accelerated task performance| US11010561B2|2018-09-27|2021-05-18|Apple Inc.|Sentiment prediction from textual data| US10839159B2|2018-09-28|2020-11-17|Apple Inc.|Named entity normalization in a spoken dialog system| US11170166B2|2018-09-28|2021-11-09|Apple Inc.|Neural typographical error modeling via generative adversarial networks| US10862852B1|2018-11-16|2020-12-08|Amazon Technologies, Inc.|Resolution of domain name requests in heterogeneous network environments| US11025747B1|2018-12-12|2021-06-01|Amazon Technologies, Inc.|Content request pattern-based routing system| DK201970509A1|2019-05-06|2021-01-15|Apple Inc|Spoken notifications| US11140099B2|2019-05-21|2021-10-05|Apple Inc.|Providing message response suggestions| DK180129B1|2019-05-31|2020-06-02|Apple Inc.|User activity shortcut suggestions|
法律状态:
2018-12-11| B06F| Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]| 2019-11-12| B06U| Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]| 2021-05-04| B09A| Decision: intention to grant [chapter 9.1 patent gazette]| 2021-07-20| B16A| Patent or certificate of addition of invention granted|Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 23/08/2012, OBSERVADAS AS CONDICOES LEGAIS. |
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 US13/219,521|US9195768B2|2011-08-26|2011-08-26|Remote browsing session management| US13/219,521|2011-08-26| PCT/US2012/052068|WO2013032857A1|2011-08-26|2012-08-23|Remote browsing session management| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|